I'm very happy using the GCN to GBA link cable (like Four Swords Adventures shipped with) combined with a used $20 or so standard GBA as my controller for my Game Boy Player.
Already had the cable thanks to Four Swords Adventures (So that was no added cost for me), the original GBA has a better form factor for my hands than a SP and I'm not unnecessarily wearing out my nice backlit SP to use it as a controller, no complaints about button placement or mappings since it's an actual GBA you're using, the condition or quality of the screen is meaningless for obvious reasons (And if it's scratched a bit, all the better since you don't have to worry about keeping it protected when not in use due to not wanting to damage a pristine screen), the battery life is excellent and will last for dozens of hours, and such GBA's are cheap.
I imagine you could get an entire setup going for under $30 pretty easily. I think I paid $20 for this GBA from GameStop (Just bring along two AA batteries and a GBA game that utilizes all the buttons to make sure it's in full working order) and I imagine the cable can be had for under $10 (Or you might already have one kicking around unused like I did).
Coming from someone that has used their Game Boy Player with a standard Nintendo wired controller, a WaveBird, a Hori digital controller and a Retroport SuperNes adapter, I can say beyond a shadow of a doubt that this is the way to go to get the most out of this accessory. And it won't cost you very much to assemble what you need.