Just to share my thoughts, I also think that heroes are a key part of the game and already some things have been done to reduce strenght of "hero spamming", like increasing recruitement time (and further increasing revival time) of heroes, as well as increasing command points.
What I think that hero balancing needs to aim for now are some hero specific mechanics that snowballs and allows for total game-breaking tactics when heroes level up, which I will list below some examples:
- Beregond: at level 10, he unlocks an ability that makes all heroes invulnerable for 30 seconds (plus a 25% armor for nearby heroes), considering the actual strenght of Gondor heroes, the potential of this ability is insane for a 1100 cost hero;
- Wormtongue: at level 7, he can make heroes in an area not able to deal any damage nor to gain any combat experience during the time of the ability - it seems too much of a deal for a 1000 cost hero, that can completely nulify, for example, Gandalf the white at level 10;
- Saruman: at level 7, he can fully convert enemy units in an area to his side for a short time, with this, you can easily make a trap even for upgraded units, completely destroying them when the time of the ability is over and possibly winning game just by that (I've actually done that once, destroyed a huge upgraded Imladris army and won the game - my adversary did not understand what happened);
- Thorin Oakenshield: at level 10, all units around Thorin (including Thorin) are invulnerable to all damage for 10 seconds - well, invulnerability is strong by itself and this one also affects everything else, once in the past I lost the game against this ability because I was unaware of it: all my upgraded units and heroes were completely destroyed by the combination of this ability and Arkenstone buff and stun... All my army and map control and outposts and everything was destroyed because of Thorin Oakenshield (my enemy only had buildings in the Castle);
- Mouth of Sauron: at least 3 big area of effect abilities that includes making enemy units fight against each other and lowering by half the damage of enemy heroes - all of this really scales up to a ridiculous potential for a 2k cost hero, and the abilities have big area of effects too;
- Drauglin: at level 10, his ability Razor Crescent completely destroy enemy infantry, including Gondor soldiers - I am not against a strong aoe as a level 10, but not one that can entirely dizimate even units like Gondor soldiers by a 250 cost hero;
- Nori: at level 8, his ability Ambush completely destroys enemy infantry in a similar way - I've experienced Nori's ability against Gondor soldiers on PvP too, but he gets the ability even faster;
Summing up, most of the problems IMO are for abilities that have insane potential in many situations and can completely change the tide of a game in an unfair/game-breaking way.