[他]{ほか} is a noun. And it can be used alone as a noun; example from 明鏡国語辞典:
「ここには[見当]{みあ}たらないから、どこか[他]{ほか}を[捜]{さが}そう。」
It can also be used adverbially; from 明鏡国語辞典:
「[会長]{かいちょう}[他]{ほか}[三名]{さんめい}が[出席]{しゅっせき}」
「[文書]{ぶんしょ}をもってする[他]{ほか}、[口頭]{こうとう}でも[説明]{せつめい}する」
Since 他 is a noun, 他の can modify nouns / noun phrases adjectivally... like 「[別]{べつ}の + [部屋]{へや}」「[右]{みぎ}の + [箱]{はこ}」 etc., as in:
[他]{ほか}の[人]{ひと} -- other people / someone else
他のもの -- other things / something else
And 他に can modify verbs adverbially... like 「別に + する (= 分ける)」「[左右]{さゆう}に + [振]{ふ}る」 etc., as in the examples from 明鏡国語辞典:
「何か他に[必要]{ひつよう}なものはありませんか」(Do you need anything other than that?)
「[釣]{つ}りの他に、カメラが好きだ」(Besides fishing, I like taking photos.)
So, going back to your sentence...
他にいいものがたくさんあるけど・・・
The 他に ("other than that" / "beside that") modifies the verb ある ("exist" → "There are") adverbially. So it literally means "Although there are a lot of good things other than that...", hence the translation "There are a lot of other good things, but...".
instead of 他いいもの
[他]{ほか} is a noun, so you can't just connect a noun 「他」 + a noun phrase 「いいもの」.
You'd say 「他の + いいもの」 to literally say "other + good things".