I might have spoken too soon, tried running a job (aircuts only) and it failed after about 10 minutes. So I plugged a 5m USB extension cable into a PC on the other side of the shop and it ran fine for 4 hours straight.
So I swapped PCs, plugged the SS straight into the "other" PC and it failed as soon as the spindle started
Then I plugged in the 5m extension cable and it worked. Turns out the 5m USB cable is heavily shielded and it actually has a USB hub in the plug at the end. So... I've swapped the PC's back and it seems to be working with the original PC and the 5m extension cable between the PC and SS (note that the SS and PC are still less than a meter from the spindle VFD).