If serial data is coming in, and youyour code is doing a delay, the incoming data is stored in a buffer (of 64 bytes). But if you wait too long, the buffer will fill-up. Once it's full, any further incoming serial data isn't stored, and will be lost.
In you'reyour third output example, you get exactly 63 characters. Which is the maximum size a 64-byte cyclic buffer can store.