Cannot receive and transmit at the same time
I dunno know about the radio interface you are using. But I can see something which will break your code for sure.

The sections, where you read data from the interface on both Arduinos are passed without a delay, interrupt, polling loop or something else.

Which means: your "read" code section is in no way synchronised with the write code section on the other arduino and vice versa. At the point when you call the function "radio.available()" (which probably tests if there's any data available at the receiver fifo) there is possibly one or any number of bytes available, but not necessary the whole transmission from the other arduino. You have to make sure — somehow — that the transmission is finished, before you can call it a day and go on with processing the received data. 

To do this you have to 


synchronise the beginning and the end of your transmissions on both Arduinos
poll the data on the respective receiver side, until you are satisfied
or run into a timeout you have to apply in case there's a byte or more lost by chance.


I hope this gives you a little bit of orientation where to start.