I'm not 100% clear on what you're trying to do, but there are a couple of homing switch options that might help you out.
https://duet3d.dozuki.com/Wiki/Gcode#Section_G0_G1_Move
H3 terminate the move when the endstop switch is triggered and set the axis limit to the current position, overriding the value that was set by M208.
H4 terminate the move when the endstop switch is triggered and update the current position
As for using an endstop but you have all of the endstop ports in use, there may be a way to tap the pins on the expansion port.
What ports do you have free on the Duet at the moment?