from one arduino to another , over and over, without stopping, as fast as I can.
Is there any point in this as there is no time to do anything with the number if you do.
This is to control christmas lights next year so it has to happen really fast to keep the lights up with the music.
Ah I see your idea of fast is not the same as mine. Music changes quite slowly compared to the speed that a controller will work at.
It works but I have to put a 300 ms delay on the transmitter or the decoding fails on the other end.
That suggests you are writing the code incorrectly.
And the data rate is to slow
Well 9600Baud is quite slow, try changing it to 115200 baud that is a lot faster.
But getting the receiver to decode it without the delay of at least 300 ms between transmissions falls flat on its face.
Again you are writing the code incorrectly. You are probably using the delay function somewhere.