Да, Host не описан стандартом HTTP/1.0 - что ж, вы вправе его
игнорировать. А вот выдавать 1.1 в ответ на 1.0 запрос вы права не
имеете - на это есть вполне прямой запрет.
Пожалуй, единственное, что не верно делает nginx - это пытается
обрабатывать 1.1 ответы от бекенда интерпретируя их как 1.0. Нада быть
ошибку выдавать.
На вопрос "зачем" ответ простой - именно потому, что keep-alive с
бекендом Nginx не умеет, вот и говорит об этом используя 1.0.