One of the benefits of the FTDI way is that the cross-platform business is dealt with for you, they have drivers for the main desktop platforms. If you want a driver for iOS or something a little more esoteric, you're out of luck unless someone's hacked something together for you.
However it's an additional chip, they're not especially cheap (important if you're manufacturing medium to high volumes) and you will still need to figure out your own application specific protocol on top of what FTDI provide.
I spent some time interfacing both a PIC24 and PIC32 with a MIPs OpenWRT Linux based platform a couple of years ago. There were some features of the USB host driver in full speed that have probably been resolved now, to do with the estimated bandwidth calculation incorrectly rejecting the device. I did fix it, but it was deep in the USB host stack.
I would recommend a LibUSB approach for cross platform at the speed you are requiring, that is ceetainly available on the host side for Linux and OSX (and Windows if you are willing to hack a bit). The 'Windows way' is WinUSB, which isn't the same as LibUSB although at a high level it's attempting to achieve the same thing, namely saving you from having to write your own device drivers.
There are also examples in Microchip's MAL for LibUSB, I am sure other devices also have LibUSB examples.
If your bandwidth requirements were smaller, I'd have no hesitation in recommending HID as your interface, but you're limited to about 500kbps (64 bytes per 1ms frame). The benefit of HID is that it requires no additional drivers, every OS includes HID these days.
Just be aware of one limitation of full speed USB. Although it will match your bandwidth requirements, be aware that some host USB 2.0 controllers and hubs only have a single transaction translator (TT). This means that sometimes multiple full speed devices don't work very well as there is only one TT to handle the high speed translation from full speed. You can resolve this by placing a USB 2.0 hub (or USB 2.0 active extender) between the host and the full speed device, as they will have there own TT.
If I were you, I'd pick a solution that ticks your boxes, and run with it. I may be wrong but it sounds like there may be some analysis paralysis going on here, an affliction I know only too well!