So, I finally got to the bottom of my issue. I was correct that what SpamCop was displaying was not what I sent. But with the help of one of the deputies (thanks Richard!), I discovered that SpamCop was displaying exactly what it received, but that was different to what I sent! The modification was being made in between by one of my outgoing mail servers. I thought I had ruled that out by forwarding the messages to myself and verifying that they were unmodified, but the issue only affected one of the many servers, which happened not to be used in my initial tests. That also explains the seemingly intermittent nature of the problem.
Thanks to everyone who helped. I've learned once again never to make assumptions, no matter how unlikely or absurd the alternatives may seem…