Nobody expected the Rovers to last anything like this long. Aledgedly, conveniant gusts of wind cleaned the solar panels by periodically blowing off the dust accumulations that had always killed previous missions withing a few weeks or months.
A fluke? I think not. Both rovers have survived despite being in diferent enviroments. Intentional? certainly not!
If NASA are earning their wages I would guess they are_doing/have_done a series of wind tunnel tests in order to find out exactly what is going on. I suspect that an unintentional quirk of the design has produced this, really rather usefull, effect.
As long as this effect continues How long the rovers will eventually last depends on luck and how long the batterys will last. Since they have over 500 cycles on them by now i immagine they may be getting a little tired by now (what batteries do they use? how many cycles are they good for?)
I think they use Li-Ion batteries, not unlike a laptop. The batteries are in the warm electronics box in the very heart of the rovers. And several 1 Watt Pu-238 isotope heaters and lots of aerogel insolation keep them warm. I have also heard that to generate some extra heat on those really chilly nights, sometimes they will fire up the high gain antenna and transmit data at high power. The waste heat from the rf circuitry keeps things warm.
I think the batteries are good for several hundred cycles--which has been exceeded. I would attribute the longevity of the rovers to good design, excellent excess design margins, good ground teams, and a whole lot of luck. Everything from here on is 'cream' as far as science goes. And JPL intends to operate the rovers until their eventual demise. To do anything less is a waste of hardworking robots!