When you send the vendor command to start streaming, please reset the DMA Channel and flush the end point pipe to start a fresh stream.
you can use the following sequence before you start committing the buffers to USB.
Please let me know what are the functions you are calling when you send the vendor commands 0x99 and 0x88.
Please try changing the third parameter of the API CyU3PUsbStall inside the vendor command 0x88 to CyFalse. This parameter is required to be set to CyTrue if a CLEAR_FEATURE request is issued by the host. In this case, there is no CLEAR_FEATURE request issued by the host. So, you can keep it as CyFalse itself. Please try this and let me know if you see any improvements.
Your solution solves the problem.
Thank you for the update.