1- It seems that proteus display only 512bytes from the 1024 the PMA have!
The F103 only has 512 bytes in the PMA. See page 625/1134 of RM0008 Rev 20. Attached is a capture of the bit showing it is only 512 bytes.
There is also a mention about this dedicated 512 byte SRAM being shared with the CAN peripheral on page 622.
Also added where it shows that both the registers and PMA are 16 bits wide but 32 bits aligned. Access can be done based on both 16 bits and 32 bits wide. As for portability it probably has to be re written to work with newer devices anyway. Have not played with USB on such devices yet, but what I wrote for the F103 does work on the F303.
2- I don't know how to let wireshark capture the trafic between PROTEUS and the host.
It PROTEUS only mimics a USB interface to be seen by the target device it won't show up under the host itself and wireshark won't be able to use it. But I don't have any knowledge about PROTEUS.