i definitely agree that this is a bit of a problem.
The fact that the player always takes their turn last, does not make sense. I think that they should at least be auto-first, or better still that some mechanism be devised to logically choose an order, or to randomise it. I really think the game should have been designed with continuous turns, where a "turn" is the time between pressing end turn, and gaining control again after everyone else is done. Instead they've made it that a turn ends at some arbitrary point after everyone has made their actions, and artificially placed the human player last. There's plenty of "right" ways to fix this, but putting a deceptive two turn duration on the spell is not one of them.
I like to say that i already consider these spells to be overpowered. To be able to reliably prevent an army from moving, permanantly, for only 20 mana per turn, is too strong in my mind. I've successfully "exploited" this to hold multiple invading armies in place as they closed in on a defenseless city, while i use that time to build new troops and prepare a defense. I think the 5-season cooldown on freeze is more than adequate, because this can already be worked around by giving the spell to multiple casters. If you have 3 people with the freeze spell, then you get 3 shots of it, which gives 60% uptime, allowing you to hold an army in place for 3 turns, then let them move for 2. I'd be opposed to any suggestion of increasing their duration in order to get a "real" two turns. Freezing someone for one turn is enough
Don't forget that it freezes everything on a tile, allowing you to hold several stacked armies in place if they end up standing on the same tile. makes map chokepoints very powerful.