him の語源ストーリー
him は、古英語では「彼に」を表す形でした。「彼を」には hine という別の形がありました。古英語には、ドイツ語のように「〜に」と「〜を」を分ける格の区別があったのです。中英語の時代に語尾の区別が崩れ、him が両方の役割を引き受けました。hine は南部の方言に少し残ったあと、消えていきます。them や whom の -m も、もとは同じ「〜に」を表す語尾の名残です。
(語源の出典・確認先:Online Etymology Dictionary / Merriam-Webster / Wiktionary 参考文献の一覧)