Assuming your world has lore, limit the spells to what the lore allows?
Having said that, when we played WFB, which has mucho magic in the lore, we dropped almost all of it from the games.
We found that spells like Ravine could win or a lose a battle.
In the end we dropped all but level 1 battle magic as we found anything else could make a mockery of well chosen troops and tactics.
My issue with WFB was we would play with say 7 or 8 units per side and a wizard could take out 1 or 2 units.
This was a devastating blow to that side, now if you had say 20 units then losing 1 or 2 may not be such a disaster.
I am minded to think of a recent Conan story I read where he faced an army lead by a foul sorcerer, the evil wizaaaard used his magics to hide his men in fog and surprise the enemy and so afraid of the wizaaaard were his troops they would be less inclined to rout.
I am wondering if in a game were a single model represents say 50 men IRL, a unit of say 20 models would therefore be 1000 men.
Would such a game have hero models that could wade into a unit and affect it at all?
In my mind it seems unlikely, more the hero grants a buff to tests and what not.
However, if the hero can take on a unit of say 1000 men, then maybe heroes are best fought with other heroes, or maybe wizards?
For large scale battles I would use wizards to influence the battle rather than dictate it.
So if an enemy unit is close to routing, a nearby wizard can use magic to enhance their view of their own demise and this adds a penalty to their rout test.
Maybe he throws fireballs that whilst they only kill a handful of the 1000 man strong unit, it enhances their panic.