Then I think it's better to leave the first tier with a one-time retaliatory strike. You could try applying it to units of tiers 1-4, which currently have a "killing blade."
In this regard, it would also be good to reduce speeds a la WGE – so that positioning makes the application of these tactics even more deliberate – even a unit without a retaliatory strike is dangerous to focus fire if it has good support.
Obviously, a one-time retaliatory strike, especially on units of tiers 1-4, which are mainly used as neutral guards, will again bring back the "single unit" tactic and thus will not solve the problem.
Improve the original balance, also by changing the mechanics that hinder the balance of power.
Although this statement is unsubstantiated, I really can't imagine how you can equalize everything with a global change and still leave interesting faction features.
I have an idea to give several units from each faction protection against archers (the "large shield" + "ally protection" abilities) and protection against mages ("magic resistance aura") or give all units 25% "magic immunity."
But this will require careful balancing not only in terms of the damage of spellcasters, but also in terms of the damage of heroes, as it will also affect them.
Now, the enemy risks taking heavy losses when attacking if they try to overwhelm the enemy with numbers. A small army will now be able to inflict significant damage and will have a small chance of winning the battle.
I think now, instead of this, I will increase the hit points of units by 2-3 times. Units will be slightly better protected from critical damage. Also, due to the "infinite retaliatory strike," you will have to withstand more damage than usual.
Now they will no longer be able to one-shot an enemy stack, but, being surrounded, they will die even with increased health.
I would, in your place, first check if the introduction of a universal infinite retaliatory strike already reduces attacking tactics enough to change damage coefficients or increased health? That is, is there any point in these changes, or are they trying to fix something that has already been successfully fixed?
These are the points that remained untouched after applying global changes. It was assumed that global changes replace several smaller changes – the number of changes is significantly reduced and, therefore, it is easier to remember.
Perhaps I will change the speeds of creatures instead of this change. What do you think about this option?
. 4-5 speed => 4 speed;
. 6-7 speed => 5 speed;
. more than 7 speed => 6 speed.