One of the unappealing aspect of wargames is the stagnation after the clash in melee. Only outcome is exchange of hits till the annihilation of one side.
I propose to change Wavering effect, with Regroup. Broken units, immediately after melee round, turn 180 degree and move away from enemy, with double speed.
In the next turn, losers will not be able to just charge again the same enemy, because allowed is only to turn 90 deg before charge. Activation would result with shifting the unit position on the map, so they would attack somewhere else.
If broken unit was the one that charge into a combat, it would move twice per activation then (charge, and retreat).
Combat winner (if not yet activated) could rear charge the retreating opponent [this need to be consider whether or not its desirable. I think would be more cool if player have to foreseen for that other unit]
There is no need to track Wavering units.
There could be an option to give Retreat order to units that are stack in flank situation - to break the unfavourable engagement and try to save troops.
More unit would stay on table, its a longer game for controlling objectives.
Back in the day we used to have a simple retreating system that worked like this, maybe it can serve as inspiration:
When a unit fails a morale test from melee/shooting, they retreat 2D6" away from the nearest enemy unit within LoS, or else toward the closest table edge. If any models from the unit move off the table edge, then the whole unit is destroyed. Retreating units must take a morale test when activated, if failed they keep fleeing by 2D6".