I see your concerns and I agree to everything you mentioned.
I don't have equipment (and knowledge) to check if USB hardware works 100% correct (I'm using STM32 mc).
This is VCP host written by me and as long as it get connected to internet it works stable.
Problem I described is only happen during connection phase and it's floating problem - only happen in about 30% cases, means in 70% connection attempts everything connects just fine and after that works (receiving and transmitting megabytes of data) for many hours without any issues.
I hoped there could be an easy fix somewhere in lwipopts, but this seems not the case.
I will look deeper in bytes that travels over the USB and see if I can find anything interesting.