Mystery Solved!
After re-soldering the shield earths and cleaning up the main earth the problem still existed.
I decided to check continuity from the MEMS starter realy to the starter solenoid. Sure enough, the wire was broken at the starter motor end! When I was moving the ECU, it was moving the wiring loom which in turn allowed the broken wire to make the connection to the solenoid. I crimped out a new end, wrapped in heat shrink and it worked striaght away.
I've definetly learned a lot about how the starting system works - every day is a school day!
Thanks all for your help. I'll be uploading a video to youtube soon.