A causa raiz do problema acabou sendo uma incompatibilidade de MTU de camada 2, que fez com que o soquete openssl atingisse o tempo limite durante a transação curl. Pacotes do tamanho MTU completos (isto é, cargas de IP de 1500 bytes) falharam porque um lado do túnel da camada 2 não permitia a passagem deles.
Outras pessoas que vêem esse erro podem não ter uma incompatibilidade de MTU, mas pode ser qualquer coisa que faça com que uma sessão SSL expire em parte do tempo em curl
.