I have my RFID security system system running 24/7. It only froze once, and that was after a power brownout. It has been going, other than that, for two years. I didn't specifically have code for detecting brownouts (I'm not sure what the brownout fuse was set to). And, possibly, the problem was with the RFID reader module and not the Arduino itself.
The nature of life here is that mains power fails from time to time, so it is hard to say for sure how long it would run without those failures. Certainly it usually recovers (like I said, except that one time).
It probably wouldn't be too hard to make a watchdog circuit out of a 555 timer or similar. The idea would be that if you don't bring a digital line low (or high) from time to time the timer resets the processor. Of course, the processor might fail in such a way that the watchdog thought things were OK.
I suppose if I was really worried I would have a second processor there, simply designed to listen for a fairly complex sequence (eg. from the serial port) and if it didn't get it every minute, reset the main processor.
But then, if a brownout can knock out the main processor, it might knock out the monitoring processor too. Maybe the monitoring processor needs to run off batteries.