"Goose"–"geese" vs. "moose"–"moose" [duplicate]
Why is there so much diversity in how English nouns are pluralized? answers most of your question quite well, I think. The relevant summary is that English (a) has major influences from a very wide range of sources (b) is rooted in Old English, which has several pluralisation schemas for different classes of word. So some Old English words pluralise by suffixing -s, some by suffixing -en, some with a vowel shift and some stay the same. Some words (ox/oxen, louse/lice) have kept their old plurals, and others have 'normalised' due to pressure on the language to be regular (cow/kine). Wikipedia has a nice reference on English plurals if you feel like exploring.
The word "goose" comes into English from an ancient Germanic language that had something called strong declension. Basically, what it means is that these words, which include "foot" and "tooth," pluralize by changing the "oo" to "ee" (like foot/feet and tooth/teeth). So that's why the plural of "goose" is "geese." Similar rules come into play for the words "louse" and "mouse." While people may have used a word similar to "hide" as the plural form of "house," the word was simply modernized into the more standard form of English pluralization (addition of the letter -s) while the others were not. "Moose" comes into English from a North American/Native American source around 400 years ago and does not follow the ancient Germanic language rules. The similarities between the two words is simply coincidental.