@zekkexavior
I've been doing a ton of experimentation with xboxdrv here lately. Unfortunately, none of that experimentation has involved an actual XBox 360 controller. What I too have found is that it seems to universally grab the events from whatever physical controller it's working with and adds a new virtual device. The rub, as you have noticed here, is that it does nothing to remove or even obfuscate the original physical js device entry if one exists. I was working under the assumption that it would remove the entry when using an actual XBox controller, but apparently it does not.
I too am actively considering a few possibilities on how to handle this best, but have not settled on what I would consider a perfect solution. I don't do a lot of multi-player gaming sessions, so it's a problem I plan to put more thought into later, but for now, might I suggest invoking the Rgui during your gaming session and rearranging the controller order to where it is assigned past the number of players that you have. It's not ideal, but it will work.
Edit: Also, @meleu has developed a great way to rearrange the controller order. His work can be found at:
https://github.com/meleu/Retropie-input-selection