French is not actually that weird; it's just weird from 80-99. From 10-79, it's just like English handles it. They just never came up with single words for 80 and 90.
I think various french speaking regions outside France do use single words for those. E.g. in neighboring Switzerland I learned 70, 80, and 90 as septante, huitante and nonante if I remember correctly (I'm from the german speaking part)
Yes, they do. Belgian French has "nonante", for instance, which would be better, but which just never caught on in "standard" French. It appears in my Cassell's French Dictionary, but it's marked "dial." for dialect.
But they actually did!
Septante, huitant/octante and nonante are real French words. Only the French don't want to use them.
Note that you cannot use heptante for septante.
It's also weird for 50-59. English does not say "fourty twelve" ("quarante-douze").