Is it possible to output sound from a MacBook via USB to an iPhone/iPod compatible speaker (the speaker has an USB input that only works with iPhones), maybe making the Mac output sound through USB the way the iPhone does?
You can output Mac sound via USB by changing the settings in Sound. Connect the USB speaker, then open System Preferences. Select Sound. There are three 'tabs' in this window: Sound Effects, Output, Input. Select Output. You may see your speakers, or perhaps "USB audio CODEC". Choose either one. Sound will come out of the USB speakers.
Without the devices to test, it's hard to say. I do know that iPhones have a specific signal they send - for example, in my truck, there's a USB port to play music that only works with iPhones and iPod Touch devices - Android and even my MacBook read as unsupported devices.
It would be able to connect via Bluetooth though - out of the options you mentioned, that may be the best.
Sending audio over USB is certainly possible, there are USB-based headsets on the market which require exactly that. Whether a given speaker supports this depends on the model though, please consult the manual (or contact the vendor).