Parece que seu servidor está habilitado para gzip (veja a resposta de curl e o resultado da compactação checkzzip). Mas como você está usando a diretiva gzip_vary on;
, você obtém o cabeçalho Vary: Accept-Encoding
.
Então, basicamente, o servidor permite que o cliente decida link
Qual codificação usar. se ele já tiver o arquivo descompactado, ele não terá um arquivo compactado (parece estranho para mim também, mas é o que afirma o artigo que parece bem informado).
Sei que isso não é consistente com o que você vê no "cache de atualização difícil que limpa a página". Mas isso é uma pista, tente configurá-lo, reinicie o nginx e verifique novamente (E, claro, verifique se o gzip.conf está realmente sendo lido e usado pelo nginx)