Почему после проброса 80 и 443 порта nginx не видит переменной server_name?
Проще сделать по другому, направить весь трафик на Nginx(одного из серверов), дальше по имени домена пропроквировать на другой Nginx
server {
listen 80 443;
server_name proxy_domain;
    location / {
      access_log off;
      proxy_pass IP
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\
     } 
}
И соотвественно другой конфиг для другого домена, т.к при текущем перенаправлении не понятно что именно доходит до сервера, а моём случае все запустится зп 5 минут(можно не использовать третью виртуалку, а проксировать с рабочего сервера на новый сервер конкретно для домена)
Скопируй конфиг с первого на второй. Если соединение по портам идет на второй сервер, значит ты накосячил с конфигами.