An external pull up to Vdd rail on MCLR is a definite nogo for microchip programmers when using HVP, resulting in Vdd error.
This part has an internal pull up when used as mclr. If mclr is active, just remove your external pullup. If using RA3 as an input then use the diode plus resistor.
Hopefully this is your only problem. With PK3, If I even touch mclr and or dat/click lines with a finger, programming fails.
Check out the enhanced midrange parts. Supply down to 1.8V, lower quiescent current, internal PLL, enhanced instruction set, more feature and options, similar cost. There are parts basically pin 4 pin compatible. And with selectable internal pullup on Mclr/RA3, when it is used as an input.
I have used 690, and I am now using 16f1828. You could be able to port your project in minutes. 1828 is actually a bit cheaper.
For assembly, the new BRW instruction is a huge improvement, alone. Just make sure you understand it can't cross a mini page boundary. Actually, in hindsight I suppose it is sorta the same thing as addwf PCL,f.