I'm having the same kind of problem while combinating grid movement with pathfinding..
I didnt test it yet but maybe one idea could be:
once the path is found you store inside an array all the nodes positions (using NodeCount, NodeAtX etc.. to find them) and then you round these positions according to your grid size (es. 32x32 grid each position is changed to: (floor(x/32)*32)+16 etc..
in this way you obtain a list of nodes positions aligned with the grid and you can have the player move along them.
very frustrating though..