I think a possible solution isn't to entirely nerf whales or to buff low or mid tier across the board. The issue all of these wot's are essentially discussing is the game becoming boring. Alliance wars are becoming stale as tactics are essentially the same every war: bloc/alliance 1 starts to militarize, bloc/alliance 2 militarizes if they think they are the target, whoever reaches adequate militarization declares war, bloc/alliance with the stronger numbers and coordination wins. Beyond that it's just a grind to cause as much damage as possible.
This gives, as many have mentioned, an objective benefit to anyone that can gather the most whales since whales can build more units and cause more damage. This isn't inherently bad, as people that have played the game or invested enough time/skill should be rewarded, but there also is a lack of payoff and complexity that would make things interesting.
A potential solution is to nerf aspects of whales or boost aspects of mid and/or low tier. For example, perhaps deployment speed (number of units you can buy/day) can be reduced by a percentage for every city you have. This way, a hypothetical alliance/bloc entirely of whales could try and militarize against an alliance/bloc of entirely mid or upper tier but that alliance/bloc would be able to militarize faster and possibly launch an attack first before the whales are ready.
We could also increase maintenance costs for units for each city. Something like that. It would still be rewarding to build cities and be a whale, but it doesn't give you an objective and simple advantage in all areas.