I'm sorry, but I really don't see what is causing that problem. Is anyone else getting this problem?
It's weird because the only thing involved with the PM part of the product uses a vBulletin class function exactly as its supposed to be used. That goes for all of the plugins too - nothing being passed is not what it is supposed to be, and the only room for error as far as I can see is the user input bit - the 'infractor' username and userid which, you've said, is not the issue.
One suggestion is that you could try making the file edits listed
here. That will not remove all references to the infractor-giving moderator, but it will stop the PM including their username.