People can still buy new stuff earlier if they want. But their old stuff can be reused by those that do not need, want or can afford the new devices. There are many categories of devices where that's a good option for many, not only phones. Besides, it's always good to have the option to repair that thing you have when it breaks even if initially you did not think you would need that. You might have grown to like it.
I've been using a 6S since 2015 (this thread caught my interest because it's now somewhat of a Ship of Theseus as I've replaced so many parts over the years), but the 11 Pro I bought last year was the first time a multi-year-gap upgrade felt rather incremental, especially for $1100. I returned it and expect to continue to use and repair the 6S until they drop iOS support for it.
Smartphones have largely caught up to traditional computers in terms of the time it takes for upgrade-worthy advancements in hardware. I expect we'll see smartphone upgrade cycles continue to lengthen until they mirror desktop/laptop upgrade cycles.
* OnePlus 3, released in June 2016, 6 GB RAM.
vs
* iPhone 7, released in September 2016, 2 GB RAM.
* iPhone 12 Pro Max, released in October 2020, 6 GB RAM.
From my perspective smartphones have not changed much.
By contrast the processor in my work phone (an Iphone) is faster than my laptop.
It seems that most people want more than just usable. They may not want to pay more for a device up front, knowing they will be missing out on the latest technology down the road.