I agree to a very large extent.
I've tended to keep my iPhones for 2 cycles (for me starting with the 3g) until things got more crazy (price-wise) in the last several years.
I went from an iPhone 6s (new within 6 mos of release) and switched to an 8 (new, when it was 3yr old tech), and then upgraded to the 13+Max last year once I was certain it wasn't flawed.
The 6s worked really well for a good chunk of time, as did the 8.
The problem I found is that the technology itself is moving too fast for the hardware to keep up with the software. I've only had one serious battery issue and that was with the 8. Yet I notice strong degradation in performance by the time the processor is 2 yrs old. Everything from web browsing and App functionality starts bogging down.
Mind, I'm not one to put gobs of stuff on my phone, either.
However, I've had Macs last 10 years and with reasonable care, I would say YES, phones should be able to last 5.
Better management and support from the phone manufacturers is one important part, as is the ability of the consumer to take care of their devices. Unfortunately, wrangling third parties is possibly next to impossible and could get much more expensive.
I keep hearing stories of new batteries that would make Li-Ions obsolete from both safety and longevity perspectives. Of course, that's only a minor part of the equation.
Would be nice if we could get away from this sense of disposable $1000 phones!