There is no free lunch when it comes to heating water with 12 volts compared to 120 VAC...

To heat 2.5 gallons of water from 60F to 110F at 100% efficiency takes ...

(2.5 gal)(8.34 lb/gal)(1 BTU/lb-F)(110F - 60F) = 1040 BTU, or 305 watt-hrs whether you use 12 volts DC or 120 VAC.

For a 12 volt supply:

(305 watt-hrs) / (12 volts) = 25 amp-hr out of the 12 volt battery

For a 120 VAC supply

(305 watt-hrs) / (120volts) = 2.54 amp-hrs at 120 VAC, which is 25 amp-hrs at 12 volts

The only real difference is that with the 120VAC system you have to account for the inefficiency of the inverter, so with a 90% efficient inverter, the 25 amp-hrs becomes 27.8 amp-hrs.

So, with a 12 volt heating element, 25 amp-hrs to heat the water.

With a 120VAC heating element, about 28 amp-hrs to heat the water.

Seems like if you can find a 12 volt heating element, it gives you a bit more flexibility with no need to have the inverter involved. You can also play with heating element size - a 300 watt element will take about an hour to heat the water and draw 25 amps. A 600 watt element will take half an hour to heat the water and draw about 50 amps -- and so on.

edit: corrected the bad calc for the 600 watt heater just above.😞

Gary