Here's another possibility.

By setting WDTCON = %0000000

If the config bit's say _WDT_ON then you can't turn off the Watch Dog Timer with the WDTCON.0

However, in the process, it's reduced the WDT prescaler to 1:32

Since the processor is running so slow. the WDT might not be getting cleared often enough.

So, either try turning off the WDT in the configs. Or set WDTCON = %00010110 (1:65536)

hth,