many of the problems could be removed if there would've been a limit on each units type (or class). Having a few overpowered units (= cannot be beaten cost-effectively) isn't such a big problem if one can only buy 1 or 2 of them. This is also proven by games such as Age of Empires: some units beat anything in 1 on 1, but you cannot get a lot of them because they either take very long to train, or take a lot of population slots (meaning you'll be outnumbered). MTW had the 4+ cost penalty and that did help.

But in RTW there is no such limit, so there is no point in buying weaker units. On top of that the speed difference between light (weaker) and heavy (stronger) infantry/cavalry is so small (and both insanely high) that this is nolonger an advantage worth considering. So why buy any weaker units at all if you can buy a whole army of stronger units ? Even if they have good counter-units that doesnt help much, because unless you know the enemy will buy 20 units of type A before the battle starts - so you can buy 10 or so units that counter type A - it is unlikely you will have enough counter units to deal with such a "spam" army.

So either you make the RPS values so extreme that a counter-unit can deal with 2 or 3 of the units it's supposed to counter, or you have to put an artificial number on each unit type/class. Until then the game will largely be decided by the army you buy, and not by the skill of the players.