That sounds like bad hardware (Revo), but ...
I had some strange problems when my telemetry antenna connector came loose, so assuming that you have a cheap telemetry/control antenna (which would cause the same problem), I would try a better antenna on a longer cable. You could also try a 50 (47) ohm resistor (dummy load, simply soldered coax shield to center conductor, or even hot to ground on the board) for a test, in place of the antenna to see if the problem goes away with a good antenna.
I would also try a different / better / stronger power supply (ESC / BEC) at least for a test.
You could also add some stronger pullup resistors to the I2C bus (SDA and SCL), I would add them on the GPS/mag board. Try something in the 2k to 4k range.
With 2 good, unidirectional antennas you should get at least a couple hundred meters telemetry/control ground test range on 1.25mw.