I don't really expect a phone to be supported beyond 2 years because that's the standard contract length, although I do think it's wasteful and I've had my phone longer than that.
My basic heating system control unit is about a decade old and I'm sticking with it.
Recent phones (i.e. less than 5 years or so) still work pretty well even with the latest OS updates, there is really no reason to make them obsolete apart from the laziness on the part of Google / manufacturers. Even Apple has been supporting the original iPhone for much longer than 2 years.
Buying a new phone every 2 years is not just a waste, it's expensive. You pay for it with your contract. I live SIM-free and i go for the cheapest providers without buying a new phone that often. Works fine and I have yet to see any application that's not running fast enough. The only missing piece of the lack of OS updates.