Use DEBUG/DEBUGIN, see if it works better.

I'm not a fan of the internal OSC for serial comm... yes some use it and have no problem with.. i know.... i know...

Use 8MHz internal, then test it with 4MHz internal... maybe, maybe maybe. Last resort, fine tune the internal OSC with OSCTUNE register