My answer would be, that champions and regular units, shouldn't be measured on the same scale at all (at least not in the end game), instead they should have different functions.
I would prefer if my champions where leaders of men and slayers of monsters.
So a leader type champion should be a great boon to an army, and a warrior type champion should be great for taking out even the toughest monsters, but a single hero shouldn't be able to take out entire well-equiped armies.
A dragon on the other hand should be able to lay waste to armies, but be killable by a great hero.
Ideas that could help with a "hero beats dragon beats army beats hero" scenario, could be stuff like:
- The existing overpower mechanic.
- Heroes not being able to slaughter multiple members of a unit. With a standard attack: one hit = one kill (special attacks, should break this rule)
- Monster effects (debuffs/auras) that hinders units a lot but doesn't affect champions as much. For example, a dragon could have a battlefield "fear 3" effect, which would have all enemy units lose 3 attack in a battle. The hero would then be reduced from 30 to 27 attack, while the 5 spearmen each with 6 attack, would be reduced from 5*6 = 30 attack, to 5*3 = 15 attack. (numbers are made up for the example)
Mages are an other matter, their power, should be constrained by the available amount of mana. Spells should be powerful, but be expensive, so you would have to think hard about when to use mana.