Anything I do will be with some sort of ASM hack too. There are one or two ASM functions I have found that seem to be contain limiters. I'm really too lazy to do any testing at the moment though. If you want to help me: 080BC8FE and 080BC926 hold 0xCA, which is the Hoenn limit. See if you can expand that limit up to 0xFF. Finding the addresses is the hard part. Once found, changing the code to support a halfword is trivial.
Note: A national dex limiter also seems to be near this. I'll need to check if anyone (Chaos Rush) has changed this in order to expand to make my changes compatible.