If the only time you experience the problem of the limit switch tripping is when doing a homing routine, it is probably true switch contact bounce, that is where they came up with the term debounce.
If I were you I would probably try to wire it up Normally closed, you would probably not get a bounce when opening the switch.
Or look for better switches, maybe a non-mechanical type, optical, capacitive or inductive switch.
With a scope you could examine the single as it closes, or as it opens and see if you are getting a bounce but this would probably be redundant since you have pretty much nailed down the problem anyway.
Arnie