Why do some past tense ru verbs conjugate with た(食べた) and others with った(帰った)？
The auxiliary verb for the past tense is actually た in the case of 帰る too, and not った.
In Japanese, to conjugate a verb, we first have to conjugate it to the correct verbal form (= 未然形, 連用形, 連体形, 終止形, 仮定形 or 命令形). And then stick an auxiliary verb (助動詞) to it. You cannot stick any 助動詞 to any verbal form, so this has to be memorized, but it becomes pretty logical if you dig deeper.
For example the 未然形 is literally the "imperfect form" (form of a verb that has not been done yet), so it makes sense that the ない (which is the 助動詞 for negation) has to be used with the 未然形, and not with the 命令形 for example (which is the imperative form). So for a verb like 書く, you would have to turn it into its 未然形, which is 書か, and then add the 助動詞 ない to it → 書かない.
Anyway I wont go into the details, but the 助動詞 た has to be used with the 連用形 (= "continuous" form) of a verb. So here are a few examples:
受ける → 受け （連用形） → 受けた （+た）
買う → 買い （連用形） → 買った （+た）
入る → 入り （連用形） → 入った （+た）
Now for it to make sense, you should know that originally in Japanese, the っ did not exist, so they had to fully write the words without any abbreviation. The 連用形 for 帰る is 帰り, so they had to write 帰りた. The reason why the っ appeared and they started writing った instead of the full form has to do with phonetics.
So although the forms seem different, they actually are the same → 連用形 + た for every verb, some just have their 連用形 abbreviated.