Segmented messages received corrupted

I send 25 byte long messages to unicast addresses in a Mesh network. Because of their size messages become segmented. access_model_reliable_publish() is used for sending. Then device waits for reliable_status_cb() and additionally checks access_reliable_model_is_free() before sending next one.

The problem is that sometimes messages are received corrupted (i.e. not the same data as sent). How is this possible? Furthermore, despite the corruption, ACCESS_RELIABLE_TRANSFER_SUCCESS is signaled.

What could be reason for this and how to fix it?

[Mesh 3.1, SD140 6.1, nRF52840]