"Can someone explain why tomorrow doesn't have the word day in it? Why does it change? Why don't we say next day? And why doesn't yesterday sound like last day? And why don't ieri, oggi, domani sound like giorno?"
I imagine the reasons will be similar -- much as English has a word for "tomorrow" that isn't formed from "day" (the way we say "next month" or "next year"), Hungarian has words for "next year" and "last year" that aren't formed from the word for "year".
It's not a rule that you missed :)
jövőre seems to be literally something like "onto the coming one" (jövő is the present participle of jön "to come" and is also used for "future").
I'm not sure where tavaly comes from (and Wiktionary doesn't say, either).