Can you check in your server logs whether the server actually responded to the requests? Either via the RayID if you log that, or by checking the exact time of the request, though this might be harder.
I’ve had pretty much the same problem for the last ~week and a half. A very small subset of users got 524 errors from Cloudflare, but my server logs showed that the server did respond with a 200 code.
In my case, restarting Cloudflared fixed the issues, though, which obviously doesn’t help you much…