Sorry for the late answer @royenroy .. i was quite busy.
I would run the Adafruit-Retrogame script on boot/startup. This script then runs backgrounded and maps your custom gpio inputs as keypresses. again, i used this to build my own controller for retro games. but maybie you can map usb controller inputs aswell and then just assign them values for example left and right and navigate through xbmc like this.
EDIT: it didnt paste links for some reason:
this is the script u have to run in background:
this is how you run it in background:
i hope it will work. please give me some feedback as soon as u tried it because i want to make it aswell one day.