In case anyones been wondering what happened with the dodgy modem, or has stumbled across this thread from elsewhere on the internet, I managed to get it working.
I had to set "compand-type a-law" on the voice ports, a-law being the standard voice codec used in Europe whereas u-law is more commonly used in the US. The cisco gear should
infer the codec type from country settings elsewhere in the config, but in this case it didn't. It's not the first Cisco bug I've come across. I'm not entirely sure why it worked at all with the codec mismatch, I would have thought there'd be no audio at all. Presumably it was automatically transcoding, losing some quality in the process and affecting v.90 calls.
Anyway, if anyone wants to play with dial up internet or BBSs give me a shout and I'll bring it in - I've managed to condense the setup down into a single router - only 3Us, 15kg and 120 watts idle ;) ... I'm still working on the blog post.
Cheers