My family members change phones every 2 years so I take theirs and if there's something wrong with it for instance a cracked screen I fix it and use it. I'm not frugal but I rarely use phones for anything than calls.
You seem to get it very well, the dumb sheep keep buying every new release of the same shit with only minor improvements along with an occasional design overhaul to make them think they're getting their money's worth.
During the old times where you were able to get a replacement battery for your phone, you could keep it for a number of years when used with care, But nowadays, even though batteries have much more capacity and longevity, they'll keep deteriorating as you use the phone. Replacing them manually is too much effort and would void your warranty.
I think It's best to wait and get a new one every 1-3 years or so, manufacturers will at least keep providing the firmware updates for up to 2 years, mainly security patches after that, but that depends on the manufacturer, the model and whether it was a flagship phone in the first place.