Even though the main reason is that it's allways has been so, I can see two minor arguments that haven't been said here yet:
- The gender of some words may vary between different regions (still within one language), so used gender gives you aditional information about the speaker.
(From Czech perspective this is not really a thing, becouse before you stumble across one of the few words that have this property, you can usually estimate the origin of the speaker by another signs.) - By asigning a gender to animals, you're proner to percieve them as living persons, compared with a language that classifies them as inanimate (English, "it").
(I am not backed by any scientific study here, it's only my feeling; and you could also claim that better solution would be ungendered language without animate/inanimate distinction, or classifying animals as animates.)