Does the RFM95 need a minimum delay between switching from Tx to Rx?

Header Disabled

Why?

And how did you get to 222 ms? If that’s 25 bytes application payload (plus 13 bytes for the LoRaWAN header, so a total of 38 bytes), then the time-on-air for SF9 is 267 ms. Or, if it’s 25 bytes total, so 12 bytes of application payload, then 206 ms.

Also beware that nodes might have a random delay before they truly start sending? At least, the specifications state, emphasis mine:

2.1 LoRaWAN Classes

The transmission slot scheduled by the end-device is based on its own communication needs with a small variation based on a random time basis (ALOHA-type of protocol).

Finally, note that LoRaWAN explicitly defines when to expect a possible downlink (see RECEIVE_DELAY1 and RECEIVE_DELAY2), so listening after 500 ms is too soon for LoRaWAN.