Eventually, Richard came up with a hypothesis that the discs had been damaged because they were sitting on the windowsill, and CD-Rs don't like bright light or heat. We used a CD from the bottom of the pile, and that one recorded with no problems.
So now I have a stack of 70-odd CD-Rs, some of which will record perfectly and some of which won't, and I have no idea how far down the stack I need to go to get undamaged discs. How utterly frustrating. And entirely unconnected to this, the linux kernel on Richard's machine keeps telling him his printer port is on fire. I'm serious - it keeps giving the error message "lp0 on fire". I boggle.