Since the failing requests after the server is considered as DOWN by haproxy seem to be POST requests: if they were initiated before the primary server was stopped, then perhaps they are not retried because haproxy is unable to retry requests that don’t fit in the global buffer:
Relevant doc:
https://docs.haproxy.org/dev/configuration.html#retry-on
Can you check if problematic requests are mostly related to POST requests?