As long as you have some air flow around the G540 you should not need a heaksink with those motors. I use this same type of motor regularly and have done extensive tests w.r.t. the G540 temperature with them.
I went into Mach3 and redid the steps and checked backlash, it was off so I redid the settings but they won't hold into memory for some reason it looks like
I think there may be at least two separate issues here. You may be having problems due to using backlash compensation. I have seen this recently with a customer. Since the G540 is a 10x microstepping drive if you have a high pitch lead screw (like a Taig or Shelrine) you wind up with a steps/unit of 40,000 or so. If your backlash is considerable the parallel port driver cannot properly insert the correct number of steps to account for backlash in the small amount of time it has to do so. The result is that the parallel port driver over accelerates the motors and you loose position.
Losing position in general is a sing that your asking too much of the stepper motors. This could be from taking too aggressive of a cut or having your acceleration and/or max velocity set too high.
If Mach is not saving changes you make the first step is to shut it down and start it up again. If it still will not save then you need to find your XML profile and change its properties so that 'everyone' has read/write permissions.