1. Произношение на английском
Английское слово Hudson произносится как [ˈhʌdsən] — ближе к «Хадсон», с глухим "х". Никакого "г" в оригинале нет.
2. Историческая традиция перевода географических названий
Когда русские начали адаптировать англоязычные географические названия, особенно в XIX–XX веках, часто использовалась немецкая транскрипция как промежуточная. А в немецком языке звук [h] (как в Hudson) может звучать ближе к русскому "г".
Поэтому:
Hudson River (река Хадсон) → через немецкое посредничество → Гудзон.
3. А современные фамилии — по-другому
Сейчас, когда переводят имена и фамилии современных персонажей (реальных или художественных), стараются использовать более точную транскрипцию с английского, без искажений. Поэтому:
Mrs Hudson из "Шерлока" (или других произведений) — это миссис Хадсон.
В итоге:
Гудзон — исторически закреплённая форма через посредничество других языков.
Хадсон — современная, точнее передающая английское произношение.