From the RX part of your RX code. If bytes is larger than 1, something will be overwritten.
If you are mixing platforms (8/32bits), try first sending an array of 4 bytes to avoid boundary problems.
Incidentally, what value does this return on your Nano 33 iot: sizeof(float) ?