As regravações não precisam estar em blocos de localização - e podem corresponder a uma regex.
Você pode ter algum sucesso com duas reescritas:
rewrite ^/(en|nl)(/contact)(/?)$ $scheme://$server_name/contact/ permanent;
rewrite ^/(en|nl)(/?)$ $scheme://$server_name permanent;
Como alternativa, você pode combinar os primeiros 4 e os últimos 2 blocos de localização com correspondências de regex - mas isso faz com que a prioridade da correspondência seja acertada (o que pode não ser muito significativo).
(Crédito para @Saif Bechan por fixar minha proposição original)