Simply, they could have not made this retroactive on existing released games. Rather just be clear that going forward, games build using the new Unity versions would have a per-installation fee. And they would slowly discontinue support for the older versions on a specific schedule.
There are new devices coming out like the new Switch, the Apple Vision Pro, and then the new features Unity is adding like AI, just add those to the new versions that have the run-time fee. People will upgrade to it on their own terms!
By making it retroactive and forcing it on everyone, they have basically screwed over their existing customers who shipped games expecting a certain cost structure and now it is higher.
Deleting this GitHub license archive repo where they make it clear that their license changes are likely unenforceable is icing on the cake.
EDIT: To remove the claim that Unreal Engine had a similar per-install fee, it doesn't.