I recently bought a new extended battery, with 3800 mAh capacity. It's thicker, like two stock batteries stacked on each other. But with the battery, also came a modified back casing. The phone is thicker and heavier, but i get twice the battery life.
Be aware though. The android kernel for this particular model only supports 1900 mAh capacity. So a bigger one might not be compatible with your system, causing false battery percentage readings, which will tell you that the battery is empty, even though it's not. There's a workaround however, but you would probably need to modify the kernel battery drivers. Simply speaking, to tell your device that it has a bigger battery (it won't figure it out on its own).
Or you could get something like a power bank integrated into the rear cover. When the primary batt gets low, you flip the switch and it starts charging.