Backup battery in production unit

We have developed/prototyped our hardware around an Arduino system which uses GPS.

In the prototype, a backup CR1220 button battery allows the GPS to maintain accurate time before it regains full signal strength. I's been pretty helpful for our test users, since they get usable data right away.

I'm unsure on the best way to design a backup battery in the production unit. While the CR1220 lasts a while, we have had some that needed to be replaced, which would be difficult in our production case. Some options I've considered are:

-using an oversized backup battery to allow for a battery lifespan that clearly exceeds the expected use of the product

-using a rechargeable backup battery that recharges when the main battery is charged

-programming the main battery to go into a low power mode instead of "off", so it acts as its own backup battery

-redesigning the case to allow a user to replace the backup battery.

Anyone have experience or advice on choosing between these options?