That depends on the bus speed (full, low, high, super), transfer type (bulk, interrupt, control, isochronous), the host controller and the host driver.
As you're using CDC, I'll assume bulk. Then it depends on how loaded the bus is, bulk bandwidth is shared and the lowest priority of all transfer types. If the bus is lightly loaded (no other high bandwidth devices), then it depends on the host controller. The theoretical maximum is 19 (64 byte) packets for full speed, and 13 (512 byte) packets for high speed. Some host controllers can only manage 13 full speed, or 7 high speed packets.
The host driver used can also make things slower than that. A CDC driver may not be expecting to move that many bytes, 240kb/s is only 30 bytes a frame, that's well within USB capabilities. CDC drivers usually don't stretch the bus' capabilities, your 500bytes in 10ms is only 1 50 byte packet per frame, which should not cause USB any problems.
The time between two start of frames is called a "frame". Its more usual to refer to transfers per frame for this question.