What "external" source can change a General Purpose Working Register if no interrupts are enabled?
"The watchdog is disabled while we are in this loop." - So you provided code that disables the watchdog? Note that it will not be disabled automatically by a normal reset.

The ATmega1284P datasheet quotes for example:


  Note: If the Watchdog is accidentally enabled, for example by a
  runaway pointer or brown-out condition, the device will be reset and
  the Watchdog Timer will stay enabled. If the code is not set up to
  handle the Watchdog, this might lead to an eternal loop of time-out
  resets.


Then there's the WDTON fuse which forces the WDT to be always on. You may want to check on that.

Oh, and by the way: You did enable the brown-out detector of the µC, didn't you? - Otherwise, upon a brown-out condition, anything could happen to the internal state of the µC.