First thing to say is that your machine will not move off by 0.500 but rather when the switch closes again it will set the Machine Coordinates to 0.500 but not move to that position away from the switch.
I think your problem sounds like you have noise on your home switch wiring and what is happening is Mach starts homing, the noise makes it look to Mach as if the switch has been hit. Mach then reverses and sees the switch close again (due to noise) and sets that as the home position.
Softlimits will have no affect on the homing move other than throw up an error if you have the soft limits set wrong, this error will only happen after the homing is done.
Try setting the debounce interval to 2000 in General Configs and see if that helps your homing issues, if it does then you have confirmed you have noise issues and it is best to try and sort these out by making sure the wiring to the switches is shielded and properly grounded.
Hood