RS485 using Serial.available() only scans one character

Serial.available() NEVER waits for ANYTHING. It tells you IF there is ANY data ready RIGHT NOW. It is YOUR job to wait, if that is what you need. Serial data arrives slowly. That is how it is.