I don’t understand questions like this. The answer is always the same: no one has come up with a “better way” because there are only so many ways to do it and the battery is the best of all available options.
In terms of what it has to do - repeatedly store and provide a large amount of energy - a battery is the smallest, simplest, most hassle-free, and lightest solution available. If this is not obvious, just consider the other options.
There is no getting around the need for a significant amount of energy to start the engine turning. You need to either carry this energy with the car, or obtain it from an external source. An external source is no good because you want car to be able to be started independently, without requiring some kind of network of “starting stations”.
There are two choices for carrying the energy in the car: some kind of fuel-based starter system, or a rechargeable system. The Coffman starter linked earlier is fuel-based, using shotgun shells with gunpowder as the fuel. I have a hard time believing this thing is any lighter than a starter and battery.
In any case, any conventional fuel-based system like the Coffman starter needs to be periodically replenished - you would have to choose between carrying a large number of “starts” with you, thus wasting weight, or replenishing the supply often, thus wasting time. I suppose you could use a RTG (radioisotope thermoelectric generator), but these are relatively low-powered, produce output constantly (so most of it would be wasted), and no one wants to contaminate the city block with nuclear materials whenever there is a serious accident. And of course, you could carry a liquid fuel, but liquid fuels generally require some kind of an engine to extract energy from them, and the engine must be started. Enough said.
So, a rechargeable system is the best. There are only a few ways to build such a system - mechanical storage, like a spring or compressed air tank, or electrical storage, like a battery. A spring is inefficient in storing energy for a given amount of mass, and a compressed air tank and required compressor, etc. are heavy as well.
So, we are left with a battery.
A battery is easily rechargeable and relatively durable, and relatively light. Using a battery allows the car to be started anytime, anywhere, without requiring any external infrastructure.
Batteries have the additional advantage of producing electricity, which is central to the operation of pretty much all systems on a car these days, including the engine computers, power steering, transmission, etc. Since alternators are mechanical devices and not hugely reliable, it is desirable to not have the entire car simply shut off if the alternator stops working. Additionally, a battery allows electrical systems to continue operating at low power even while the car is turned off. This enables keyless entry systems, power door locks, alarm systems, etc. For these reasons, even a car using an alternative starting system would still probably have a battery anyway.
Of course, people are working on making batteries smaller and lighter. I expect to see Lithium-Ion automotive batteries available for general use in a few years. They are already available for airplanes, where weight is a big deal, but the cost is still prohibitively expensive for cars.