Thanks for the suggestions. I didn't have access to a computer so couldn't Skype, and didn't want to run up a huge phone bill of the person I was staying with so a US call was out.
Luckily when I arrived in London (after the Italy service Centre had closed) I rang the London Gold line fully expecting them to say "it's nothing to do with us, call your service centre in the morning" but they sorted it all out in a couple of minutes. They said that it was a combination of BA.com problems, changing from miles to Avios, and the fact that I'd booked in the half price miles sale that had thrown BA.com to give the "computer says no" option.
Anyway, well done BA for sorting it out (although it would have been nice if I could have done it online.....