Well, if you want to be technical, the slot-2 M3 Perfect does have SDHC compatibility and doesn't require GBA rom patching.
HOWEVER, there are some major caveats:
1. SDHC support only works with media files using the M3's own media player. The space cannot be used for games.
2. You don't need to patch most games to get them to run, but you do need to patch if you want them to save properly (plus the other advantages you get with patching like soft-reset).
So I'd agree with Destructobot, your best option would be to get an SDHC-compatible slot-1 device along with an expansion pack like the 3in1, using the GBA ExpLoader program so you don't have to patch anything.