You need to give them more functions that just "Deal Damage" and "Take Damage" because the vast majority of what defines how powerful a champion is relating to these points is what items they build and how they effectively spend their gold. Specifically, incorporate functions that do not scale directly with gold or levels, but with application.
Take Darius' heal for a moment. Most of the boards hates it I know but let's reframe it like this: If Darius' heal had low base values and high scaling, wouldn't you think that'd make Darius even more feast or famine than he is now? If he falls behind, it wouldn't do anything for Darius. If he's ahead, that scaling would shoot him through the roof. Instead of trying to balance Darius' heal based on scaling and numbers and items, Riot instead based the heal on how many people he hits; it's based on gameplay patterns instead of just gameplay numbers. If you are a skilled Darius, it doesn't matter if you're ahead or behind, you could always take advantage of that heal. This lessens the feast or famine elements in Darius' kit and emphasizes using raw skill to supplement his abilities, in this case optimal positioning.
tl;dr: Build the champion based on gameplay actions, not raw stats.