Your table exceeds 256 bytes, from what I remember it causes chaos if tables cross 256 byte boundaries. I do seem to recall though that you could create much larger tables, that can cross boundaries?.There's callw where you preload w with the destination, but again, the 16FXXX to 16F1XXX migration document is not that clear on how far it can actually jump.
As I read it, it supposedly can jump across pages, but as my program is currently only 1200 words, paging is not an issue other than the DW read which is at the very end of the second page and I know that is working ok when run on it's own.
In fact, having looked it up, my Tutorial 13.3 uses large (16 bit) tables which can exceed boundaries with no issues.