I’ve had the best luck with Gaia, Glazed, and the modern FireRed-based projects (not the Kaizo ones). They’re generally patched cleanly and run fine on mGBA or VBA-M. Patching tips that always save me time: (1) use the exact base ROM the patch requests (check the patch notes usually “FireRed (U) v1.0” or “Emerald v1.0”), (2) use FLIPS for .ips and xDelta UI / Delta Patcher for .xdelta, and (3) if patching errors happen check CRC/MD5 wrong ROM version is 90% of the problems. If a hack feels unstable, try a different emulator (mGBA first) before blaming the ROM.