You don't seem to get the idea of "less". Take two phone designs, differing only in that one has an internal battery and one has a replaceable one. The one with the internal battery will have X joules. The one without will have Y joules. X will be a bigger number than Y. This matters in all cases where people don't think Y is big enough, and I've never heard anyone say, "Damn. I'd buy the phone but the battery life is just too long."
The phone will get obsolescent. The software will typically go first, followed by the battery. Do you like to profile your code and optimize the second slowest part as a general rule?
I assume you shoplift your batteries, since you're so insistent about no charge. If not, then you're acknowledging that some expense is reasonable. What you probably want to do with your iPhone, assuming it needs a new battery while it's still worth having as a modern smartphone. The battery is more expensive than the nine-volt in your smoke detector, but that is to be expected, and there are Youtube videos on how to change them yourself. I didn't look for all versions, but there's videos for the 7 and 7 plus, and I'd assume for earlier models. If it's your phone, then I don't care whether you do it yourself or take it into the Apple store or find someone else (there were people other than Apple offering you change your battery if you didn't want to do it yourself).
Now, it's all right to want easily replaceable batteries. It's fine to only buy phones with such batteries. It isn't a moral point. How easy it is to replace the battery is a tradeoff, and different people like different tradeoffs.