Arduino to Arduino Serial Issues

Hello,
I have built two strip boards with ATMEGA328PU's from an Arduino UNO's.
Board A reads the state of 10 pins and sends the opposite to the pin state across a 9600 kbps RS232 serial link.
Board B recives the alarm data and sets pins to the data recived from board A.
In the event of the serial link failing all pins on Board B are to be set low.
The problem I have is on board B the IC reads the serial port out of sync with the transmit of board A and I'm not sure how to store serial reads on board B whilst keeping the failsafe active. (I'm new to all this programing malarky).
Here are my codes.

Board A

  byte incomingByte;
   byte alarm0byte; 
  byte alarm1byte; 
  byte alarm2byte; 
  byte alarm3byte; 
  byte alarm4byte; 
  byte alarm5byte; 
  byte alarm6byte; 
  byte alarm7byte; 
  byte alarm8byte; 
  byte alarm9byte; 
  
  byte data1;
  byte data2;
  byte data3;
  byte data4;
  byte data5;
  byte data6;
  byte data7;
  byte data8;
  byte data9;
  byte data0;
  
  
  int alarminput0 = A5;
  int alarminput1 = A4;
  int alarminput2 = 2;
  int alarminput3 = 3;
  int alarminput4 = 4;
  int alarminput5 = 5;
  int alarminput6 = 6;
  int alarminput7 = 7;
  int alarminput8 = 8;
  int alarminput9 = 9;

void setup()
{
// start Serial port at 9600 bps
Serial.begin(9600);

  pinMode(alarminput0, INPUT);// ALARM INPUT 0
  pinMode(alarminput1, INPUT);// ALARM INPUT 1
  pinMode(alarminput2, INPUT);// ALARM INPUT 2
  pinMode(alarminput3, INPUT);// ALARM INPUT 3
  pinMode(alarminput4, INPUT);// ALARM INPUT 4
  pinMode(alarminput5, INPUT);// ALARM INPUT 5
  pinMode(alarminput6, INPUT);// ALARM INPUT 6
  pinMode(alarminput7, INPUT);// ALARM INPUT 7
  pinMode(alarminput8, INPUT);// ALARM INPUT 8
  pinMode(alarminput9, INPUT);// ALARM INPUT 9
  
  

}

void loop()
{
  
  //READ ALL ALARM INPUTS
  
    alarm0byte = digitalRead(alarminput0);
    alarm1byte = digitalRead(alarminput1);
    alarm2byte = digitalRead(alarminput2);
    alarm3byte = digitalRead(alarminput3);
    alarm4byte = digitalRead(alarminput4);
    alarm5byte = digitalRead(alarminput5);
    alarm6byte = digitalRead(alarminput6);
    alarm7byte = digitalRead(alarminput7);
    alarm8byte = digitalRead(alarminput8);
    alarm9byte = digitalRead(alarminput9);
  
    //IF ALARM CONDITION IS HIGH, TRANSFER A LOW TO FAR END TO SHUTDOWN RELAY 
     if(alarm0byte == HIGH)
  {  data0 = LOW;}
  else
  {  data0 = HIGH;}
     
      if(alarm1byte == HIGH)
  {  data1 = LOW;}
  else
  {  data1 = HIGH;}
   
    if(alarm2byte == HIGH)
  {  data2 = LOW;}
  else
  {  data2 = HIGH;}
   
    if(alarm3byte == HIGH)
  {  data3 = LOW;}
  else 
  {  data3 = HIGH;}
   
    if(alarm4byte == HIGH)
  {  data4 = LOW;}
  else
  {  data4 = HIGH;}
   
    if(alarm5byte == HIGH)
  {  data5 = LOW;}
  else
  {  data5 = HIGH;}
 
      if(alarm6byte == HIGH)
  {  data6 = LOW;}
  else
  {  data6 = HIGH;}
   
    if(alarm7byte == HIGH)
  {  data7 = LOW;}
  else 
  {  data7 = HIGH;}
   
    if(alarm8byte == HIGH)
  {  data8 = LOW;}
  else
  {  data8 = HIGH;}
   
    if(alarm9byte == HIGH)
  {  data9 = LOW;}
  else
  {  data9 = HIGH;}
  
  {  
  Serial.write(240); //SYNC char
  Serial.write(data0);
  }
  
  delay(1);
  
  Serial.write(241); //SYNC char
  Serial.write(data1);
  
 
  delay(1);
  
  Serial.write(242); //SYNC char
  Serial.write(data2);
  
 
  delay(1);
  
  Serial.write(243); //SYNC char
  Serial.write(data3);
  
  
  delay(1);

  Serial.write(244); //SYNC char
  Serial.write(data4);
  
delay(1);

  Serial.write(245); //SYNC char
  Serial.write(data5;
  
  delay(1);
  

  Serial.write(246); //SYNC char
  Serial.write(data6);
 
  delay(1);
  
  Serial.write(247); //SYNC char
  Serial.write(data7);

 
delay(1);
  
  Serial.write(248); //SYNC char
  Serial.write(data8);
  
  delay(1);

  Serial.write(249); //SYNC char
  Serial.write(data9);
  
 delay(50);
  }

Board B

  byte incomingByte;
  byte alarm0byte;
  byte alarm1byte;
  byte alarm2byte;
  byte alarm3byte;
  byte alarm4byte;
  byte alarm5byte;
  byte alarm6byte;
  byte alarm7byte;
  byte alarm8byte;
  byte alarm9byte;
  
  int alarmoutput0 = A5;
  int alarmoutput1 = A4;
  int alarmoutput2 = 2;
  int alarmoutput3 = 3;
  int alarmoutput4 = 4;
  int alarmoutput5 = 5;
  int alarmoutput6 = 6;
  int alarmoutput7 = 7;
  int alarmoutput8 = 8;
  int alarmoutput9 = 9;



void setup()
{
// start Serial port at 9600 bps
Serial.begin(9600);

  pinMode(alarmoutput0, OUTPUT);// ALARM OUTPUT 0
  pinMode(alarmoutput1, OUTPUT);// ALARM OUTPUT 1
  pinMode(alarmoutput2, OUTPUT);// ALARM OUTPUT 2
  pinMode(alarmoutput3, OUTPUT);// ALARM OUTPUT 3
  pinMode(alarmoutput4, OUTPUT);// ALARM OUTPUT 4
  pinMode(alarmoutput5, OUTPUT);// ALARM OUTPUT 5
  pinMode(alarmoutput6, OUTPUT);// ALARM OUTPUT 6
  pinMode(alarmoutput7, OUTPUT);// ALARM OUTPUT 7
  pinMode(alarmoutput8, OUTPUT);// ALARM OUTPUT 8
  pinMode(alarmoutput9, OUTPUT);// ALARM OUTPUT 9
  
 
}

void loop ()
{
 
  if (Serial.available()) {   // are there any bytes available on the serial port ???

// assign bytes to the var ‘incomingByte’
incomingByte = Serial.read();

if ((byte(incomingByte) == 240)) {
 alarm0byte = Serial.read();
digitalWrite(alarmoutput0, alarm0byte);
delay(1);
}

if ((byte(incomingByte) == 241)) {
 alarm1byte = Serial.read();
digitalWrite(alarmoutput1, alarm1byte);
delay(1);
}

if ((byte(incomingByte) == 242)) {
 alarm2byte = Serial.read();
digitalWrite(alarmoutput2, alarm2byte);
delay(1);
}

if ((byte(incomingByte) == 243)) {
 alarm3byte = Serial.read();
digitalWrite(alarmoutput3, alarm4byte);
delay(1);
}

if ((byte(incomingByte) == 244)) {
 alarm4byte = Serial.read();
digitalWrite(alarmoutput4, alarm4byte);
delay(1);
}

if ((byte(incomingByte) == 245)) {
 alarm5byte = Serial.read();
digitalWrite(alarmoutput5, alarm5byte);
delay(1);}
}

if ((byte(incomingByte) == 246)) {
 alarm0byte = Serial.read();
digitalWrite(alarmoutput6, alarm6byte);
delay(1);
}

if ((byte(incomingByte) == 247)) {
 alarm0byte = Serial.read();
digitalWrite(alarmoutput7, alarm7byte);
delay(1);
}

if ((byte(incomingByte) == 248)) {
 alarm8byte = Serial.read();
digitalWrite(alarmoutput8, alarm8byte);
delay(1);
}

if ((byte(incomingByte) == 249)) {
 alarm0byte = Serial.read();
digitalWrite(alarmoutput9, alarm9byte);
  delay(1);
}
else // NO DATA SET PORTS LOW
{

digitalWrite(alarmoutput0, LOW);
delay(1);
digitalWrite(alarmoutput1, LOW);
delay(1);
digitalWrite(alarmoutput2, LOW);
delay(1);
digitalWrite(alarmoutput3, LOW);
delay(1);
digitalWrite(alarmoutput4, LOW);
delay(1);
digitalWrite(alarmoutput5, LOW);
delay(1);
digitalWrite(alarmoutput6, LOW);
delay(1);
digitalWrite(alarmoutput7, LOW);
delay(1);
digitalWrite(alarmoutput8, LOW);
delay(1);
digitalWrite(alarmoutput9, LOW);
delay(1);
}//NO DATA RECIVED ELSE END
}
if (Serial.available()) {   // are there any bytes available on the serial port ???

// assign bytes to the var ‘incomingByte’
incomingByte = Serial.read();

if ((byte(incomingByte) == 240)) {
 alarm0byte = Serial.read();

You've been told that there is at least one character available to read, but you go right ahead and read both of them.

When you find yourself writing stuff like this

  byte alarm0byte; 
  byte alarm1byte; 
  byte alarm2byte; 
  byte alarm3byte; 
  byte alarm4byte; 
  byte alarm5byte; 
  byte alarm6byte; 
  byte alarm7byte; 
  byte alarm8byte; 
  byte alarm9byte;

then it's time to start looking at arrays.
Your code will be shorter, easier to read and easier to debug and maintain

Might be easier to send the pin state in the form of a pin state (0 or 1), pin identifier (a, b, c, etc.), and a packet delimiter (such as a comma or other byte). Then the decoding might be simpler. For pin 0 low, you might send 0a, and for pin 3 high you might send 1d, .