In my university years I worked at Best Buy part time and the HP rep who visited always openly acknowledged (and joked about) batteries as being overpriced as it's easier for people to justify a new laptop when the battery is approaching 1/4 of the price of a new one. Granted, this laptop we're speaking of is worth a lot more than $200 x4 but I think the point is clear.
It doesn't make good business sense to encourage people to spend $100 on a battery for a laptop they don't sell anymore when you could spend $800-$2000 on a new laptop.
The real question is: Why should a company provide better tech for their old machines when that tech has to be custom built for that and a small line of similar machines.
All the things you list are strongly influenced by Moore's law and things with a similar trajectory.
Batteries are on nothing like the same trajectory. I think the average rate of improvement is 10%/year. Not bad, but nothing compared to doubling every 18-24 months.