Why wouldn't history of Testnet3 repeat in Testnet4?
Of course it will repeat on testnet4. But, as I said in another topic, the solution is to improve the code in your Bitcoin Core node, not in your mining equipment. Think about it, and use proper rules, to always work on blocks with minimal difficulty.
Does it make sense to drive difficulty up to levels where only few dare to waste money for energy for a worthless-by-design-and-intention coin like tBTC?
Of course it doesn't make any sense. However, as long as testnet rules are quite close to mainnet ones (in both: testnet3 and testnet4), those coins are doomed to get some value over time. And then, it is all about having enough support for more frequent resets.
It would be more fun for participants to be able to mine Testnet4 with CPU cycles in a truely decentralized fashion.
It is already possible. There are quite frequent block reorgs, but besides that, it works even on testnet3.
setting a max difficulty in testnet
There already is a max difficulty, but nobody reached it yet, even on mainnet. Each hash is just a 256-bit number, and if you create SHA-256 hash of almost all zeroes, then you will reach the max.
and known EOL would help
This one we have as well, currently set into year 2106 or year 2038, depending on Bitcoin Core version (some of them are buggy).
mine all you want with whatever ASIC you have as of Jan 1 2025 testnet 4 is going to become testnet 5
Well, if you reset things more often than every four years, then you have no chance to test any halvings, and then you can permanently set basic block reward into 50 tBTC.
It's not like the old testnets will stop working just new ones will start.
We already have something like that in signet: anyone can just pick a new signet challenge, and it will start a brand new network. And if you pick OP_TRUE, then it is more or less the same as testnet4, but without 20 minute block rule.