Ok, answering my own questions here :)
qppoprelay seems to do what I need:
http://qpsmtpd.kju.de/qpsmtpd/created_by_me/qppoprelay/
Michael, you might like to add to the install notes that you need to
have suidperl installed to run qppoprelay-unlock.
Also, if you're using softlimit, you'll need quite a high setting for it
to work.
My qmail-pop3d run script is now:
#!/bin/sh
exec /usr/local/bin/softlimit -m 6000000 \
/usr/local/bin/tcpserver -v -R -H -l 0 0 110 \
/var/qmail/bin/qmail-popup \
pop3.robinbowes.com \
/home/vpopmail/bin/vchkpw \
/usr/bin/qppoprelay-ok \
/var/qmail/bin/qmail-pop3d \
Maildir 2>&1
Cheers,
R.