Stopping interrupts to let rest of the program run.

If you have too many interrupts occurring then of course nothing else can happen. Apart from detaching the interrupts and ignoring the data there is not much you can do.

Using the digitalWriteFast library (it also has a read function) will significantly reduce the time taken by an ISR. Using Port Manipulation would speed it up a bit more at the expense of being a bit more complicated to code. But I don't know if digitalwriteFast will work on a Due and i don't know how to do Port Manipulation on a Due.

A much better approach IMHO is to use a more sophisticated wireless system that communicates directly without the kludge of trying to measure pulse widths. Have a look at this Simple nRF24L01+ Tutorial.

...R