+1 on the lithium cells. I use lithium Energizers in nearly all of my lights and pack electronics so the shelf life has been pretty good. I do check my kits every 6 months (there are MagLite LEDs in almost all of them). The easiest way to schedule this is to do it at the daylight savings time changes. Google Calendar is scheduled to mail me when it's time to check the smoke detectors, carbon monoxide detector, extinguishers, weather radios, go bags, etc. It sounds like a lot but you'll probably be done in 30 minutes. Write the date on the battery with a Sharpie before you put it in.

A lot of this may have to do with the temperature and humidity of the particular environment you're storing them in. This week in Virginia, it's been 100+F with high humidity pretty much every day. In a car, that probably spikes to 125-130 easy. That does nasty things to the battery chemistry.