Not quite sure what I did but I've fixed it, whether I'll have other problems with 3.1 is yet to be seen. This is what I did:
Turned PC on, connected iPhone, tried to restore, same happened as yesterday. Restarted & repeated 3 or 4 times on different USB ports (again) but still no luck.
Went in to the BIOS and found my USB ports were set to full speed rather than HiSpeed so set it to HiSpeed, restarted and tried to restore a few more times. Didn't work, still got the iBoot message saying I was using low speed USB.
I went back in to the BIOS and disabled low speed USB support completely in the hope iBoot would get it's act together (in case that was causing the problem). Restarted and realised my USB KB & mouse are USB1.0 and couldn't do anything with my PC, lol, so turned the PC off & removed the mobo battery for a few minutes. I popped it back in and the BIOS had reset; I changed USB to support HiSpeed, restarted the PC & logged in. I connected the iPhone and heard the "diddle-ink" for the first time in a while, clicked restore and it did it as it should! Still had the non-HiSpeed message from iBoot though. Either my mobo (Asus K8s-mx I think) is screwy or iBoot is bananas.
After the restore was complete it automatically backed up my (restored to factory settings) iPhone which overwrote the backup with all my settings, pics, music, apps and filthy texts, nice
At least it's not bricked any more.
I know it's a bit of a long rambling post but thought I'd put as much detail as possible in case anyone else has the problem and there's something I did that fixes it.
Right, off to the app store...