More info:
The problem appears to be different now (7.04 vs. 7.01)
The battery charge indication jumps during or right after accessing digital data (e.g. email, browser). The charge level drops precipitously, then stays at that level for hours. Today, I had 86% charge at around 2 p.m. I read email for about 7 minutes, and the charge dropped to 56%. It's still at 56% now, at 6 p.m.
My theory: the battery manager is reading the voltage while the cell radio is operating with a heavy current load, resulting in voltage sag. Rather than throwing this reading out, or at least averaging, the manager sees this as the current charge state and doesn't reset it upwards when the load goes away.
While the battery is mostly charged (above about 50%), this is ok. As the battery drops below 50% (true charge), the voltage sag is enough that the battery manager thinks the battery is fully discharged, resulting in an immediate shutdown.
Plugging in the phone, even briefly, resets the charge reading, and viola, it shows a decent charge.
i can't see any workaround, other than don't use the Internet while not on WiFi.