Sadly, the micros function has a resolution of 4µs in all the AVR based Arduino boards. It is possible to do better, but it means making fairly extensive modifications to the library functions. The frequency error of the internal oscillator is somewhat difficult to determine from the spec sheet, but seems to be about ±2% at nominal temperatures. You can get a bit better with calibration (step size is 0.75%). Because your Mega board has a crystal oscillator, it will be more accurate.
To generate a pulse exactly (within the 2%) you can program the microcontroller's Timer/Counter directly. Using TCB0 or TCB1 for this in "Single-Shot Mode" you can generate a pulse with width configurable to any multiple <65535 of 0.0625µs.