I think the "cheap heavy cavalry" problem is actually a "lack of sufficient terrain" problem. On a board with just rolling hills and open fields, maxing out on cavalry of any type is a no-brainer, and infantry just needs to get out of the way and pray it doesn't get noticed. Once you start adding forests, towns, and other obstructions to cavalry, infantry suddenly becomes more useful and attractive - and you need the more elite infantry to deal with the opponents defended units.
Giving monsters some ability to go into forests (or even built-up areas - sort of medieval/fantasy version of godzilla

) would provide a more interesting way of rooting out that defended infantry. Yes, by themselves it's probably still a losing proposition, but why would you risk a large monster on its own? I envisioned something more along the lines of "combined arms assault, monster style". That unit of spearmen isn't likely to dislodge that infantry in the woods, but send in a dragon, hydra, etc. along with them and the equation changes a bit.
I think it's right that monsters should fear heavy cav. Both tend to be high-value units, and a combat between the two would understandably be quite dicey for the monster (it being only one base vs. 3 cav).