Хочется обойтись без HAProxy, а порт 80 нужен на тот случай, если будет заблокирован нестандартный порт. Как это теперь лично я обхожу — писал выше.
Если есть способ как на одном сервере для разных хостов иметь одинаковый внешний айпишник (либо для разных хостов и разных айпишников, но опять же на одном сервере) для сервера на Убунте — хоть направление скажите, куда копать :) Это будет по-лучше решение, чем проверка заблокированности порта и скатывания на лонг поллинг если порт заблокирован.