What open source virtual serial port code exist which can run on a Microchip IC?
I don't have a answer to your whole question, but I do have a open source USB stack for the Microchip 18F USB hardware.  I have not implemented a serial port class, although that shouldn't be too hard of a layer on top of the code that is already there.

My USB code uses the hardware ping-pong buffering mode with triple software buffers per endpoint.  You define which endpoints you use, their transport mode (bulk, interrupt, etc), how big each buffer should be, and the software configures itself to this at build time.

The USB firmware is in a incremental release you should install after installing the main PIC Development Environment release.  Both are available at http://www.embedinc.com/pic/dload.htm.