It's possible MSMQ is running out of disk space, or at least that's the same
error reported by MSMQ when it does.
Check the storage location for MSMQ on the machine using the control panel
applet. Is it set to the default directory under %SYSTEMDIR%? You might want
to try to move it to another drive, if indeed you're running out of space.
Also, remember that messages cannot be larger than 4MB. If you are writing
text, for example, that is Unicode-encoded you'll use twice the space to
store it. That sounds like something that might be happening, since you seem
to break at 2MB.