About i can only configure the standard endpoint 0
It was expected.
Because USB-MIDI device is one of USB -Audio device, not USB-HID device.
The USB keyboard/mouse are belong USB-HID and use the interrupt transfer of USB.
But the USB Audio device used the isochronous transfer of USB, normally.
USB MIDI device 1.0 http://www.usb.org/developers/devclass_docs/midi10.pdf
I haven't completed to study above document.
But I guess if you want to port it from USB Keyboard/Mouse drvier,
You should do something as below.
1.change the class id, subclass id, protocol id.
2.You should remove useless setup transfer that USB-HID have in enumeration stage
3.you should add specific setup transfer if it was mentioned in above document
before enumeration completed
4. register the isochronous transfer into host that will help you to complete the transfer that you want.