Update3: Well I did it!
I have disabled all level based stat scaling from my emerald cart, now only EVs and IVs affect your pokemon's stats. Super friggin cool!
To do so is relatively simple, we're just hijacking the point in the code where it pulls the pokemons level, then replacing it with the number 50 (or whatever you want, really) the code is riduclously simple:
Non HP stats (compiles to: 32 21)
HP (compiles to: 32 24)
Battle Calculations
These are just overwriting the position where level is loaded with the number 50.
#0x32 is the level you want to simulate, I chose 50, but you could force it to be level 1, or 100, or whatever. Doesn't make a huge difference.
Once you've compiled those you're overwriting the following positions on your emerald rom
I set all the registers to 32, which is 50, if you want a different level just work out the hex value and calculate it. (100 for example is 64)
I haven't checked these, so it might not actually be in that order, but I'm fairly certain it is (HP is definitely first though)

In action, note mudkip is level 30.
He has mukty IVs though so the stats are a little off, but you can see they're close enough (tm)
EDIT: further testing has unveiled that something slipped through my net, the pesky damage formula.
Apparently it uses the users level as well (why? i don't know lol) so if you apply these tweaks it will result in your mons becoming stupidly bulky.
I'm working on a fix but
I wouldn't use this until I do. It's now fixed!
EDIT2: I've located the appropriate locations and fixed them, but damage seems to be 20% higher than normal, I'm going to test more.
EDIT3: I've fixed it, the unusual damage numbers was me being muk and redirecting one position too early (we were using some unknown number for level scaling, I don't know what)
I've updated the instructions. This should work. Happy flat battles.