The issue is not so much with champions or armies being more powerful than the other, it's that leveling up a singular unit or group of units makes all future trained units pathetic by comparison. (The currently rediculous upgrade costs not withstanding)
Let's look at each of the issues causing the disparity (feel free to add more to these in your replies):
1. Not splitting xp: This highly supports the stack o doom mechanic and very quickly allows leveled units to get out of control.
2. No Leveling Cap: Whether it is a champion or a squadron of spearmen, a level 20 unit will trounced multiple units of the same type at a lower level
3. All champion Armies: It's not so much that it 'can' be done just that it is currently the most efficient
4. Low level defenders: Units that do not adventure do not gain experience and act as a very poor defense against leveled units.
5. Stack o Doom: There is little reason to mount any sort of offensive other than your stack of doom given both units and champions at low levels get trounced by their leveled counterparts. In addition without proper reproduction of formidable units, the loser of any given battle will be unlikely to recover. Strategy games that can utilize multiple armies in multiple locations contain considerably more 'strategy' than running one stack around until you win (or lose)
Here are the proposed solutions:
Split weighted xp: I do not propose to split xp based on unit level but based on unit type. Champions split the xp evenly with each other, and at 1/4 with regular units. Regular units normally recieve 25% xp and do not split the ammount. This should resolve issues 1 and 3.
Soft/Hard Level Cap: of 18 for heroes, 5 for units.
Regular units have double hp: At level 1 they recieve base 12 hp per unit, but their health increases by half of what it does currently at level up. To help balance the loss of total potential power, units gain small bonuses at level up, such as either init, acc, dex, or str at varying levels. A special attack would be neat to!
Units upgrade costs: The cost involved is time and materials at the city screen, and that unit can be outfitted to the next group tier.
All units recieve 1 xp per turn: Buildings and champion traits can increase this ammount. To balance this, the ammount of time a typical game should last would approximately equal the total of this value to reach level 5. Eg. If the game is supposed to take 500 turns, the xp required should be 20, 45, 80, 145, 210. Explained further below
Experienced, Veteran and Crusade: All reduce the total xp required for the next level by 1 tier. So experienced + veteran would reduce the total xp required to 145 (as it knocks off the last two tiers). Crusade becomes a global (or city) enchantment. Command Posts Also reduce this by 1 tier, Making late game units potentially max level in 20 or fewer turns, which they may need to be, to compete with the already leveled forces opposing them. Crusade could work on champions too!
War Buildings to Improve Defenders: Add different unit types to milita: archers, catapults, spearmen, cavalry and spread out starting placement (higher terrain would be awesome) to prevent instagib fireballs/blizzard.
Keep in mind these numbers are drawn out of a hat and maybe the typical game is supposed to last 1000 turns (though that seems excessive). The point is that the number of turns the game is supposed to last should be taken into consideration when balancing xp gained from buildings and combat, and that balance does not appear to be present.
Feel free to add other issues and suggestions for improvement and I will endeavor to keep this updated.