The described situation with the flying unit, both in Heroes 2 and in Heroes 3, is more an AI programming problem than anything else.
If the AI is smart enough, and moves its troops so that they can reach, in a "cooperative" way, all the hexes on the battlefield, then the problem is solved.
But, it's still true that the "wait" button will only be a supplementary way to abuse the AI.
It would be better the AI moves its troops more smartly.
A simple example, instead of moving 6 hexes during its move (full move), and be attacked by an enemy troop with a move of 4 hexes the same round, the AI can decide to move only 4 hexes, to avoid the enemy attack, and be the first to attack next round.
The "wait" button is not a complete necessity, and I would prefer a smarter AI.
It should also be noted that, the predictive AI is also a great part of the fun during combat, and it's also a way to "use your brain" and win against a superior army.