PIC12F1822 program counter jumping around during debug and release programming
I used an assembly template located here from Bill Howl on this website and wrapped your delay routine around it.
I payed particular attention to the port initialization routine example given on the microchip datasheet pg 124 Example 12-1 Initializing port A.
The BANKSEL PORTA just before the delay routine and port toggling kicks off is crucial!
Doesn't appear to have the problem your are experiencing with the program counter. Simulated for 806 seconds... And no issues.
Sometimes it helps to clean the project code up by clicking project, clean.
Give this source code a try
Your second piece of code is causing stack overflow errors
CORE-E0001: Stack over flow error occurred from instruction at 0x000037
CORE-E0001: Stack over flow error occurred from instruction at 0x000037
CORE-E0001: Stack over flow error occurred from instruction at 0x000037
CORE-E0001: Stack over flow error occurred from instruction at 0x000038
This is because you are missing the return statement in the AUXHELLOWORLD block.

When your code starts it would cause an infinite never-ending loop of these two calls (initialise and auxhelloworld) each time adding to the stack and never getting popped back.
Eventually the stack will be overwhelmed and lose track of where it is supposed to return causing strange code behaviour and program counter to jump about.

    START
    CALL    INITIALISE
    CALL    AUXHELLOWORLD

Try the template!
Really you should learn c code and download the microchip or Hitech c compiler. It will make your life much easier... You won't go back to assembly!
Furthermore you can also incorporate assembly in c code, if you really needed the specialised code.