English number words are pretty logical after a point. From twenty-one to ninety-nine, the same principle applies: you say the tens place followed by the units place. But the teens are different. Not only does the ten (which is where the word teen comes from) come after the units place (10+7 is not teen-seven but seventeen), eleven and twelve don't fit in at all.
Eleven and twelve come from the Old English words endleofan and twelf, which can be traced back further to a time when they were ain+lif and twa+lif. So what did this –lif mean? The best guess etymologists have is that it is from a root for "to leave." Ainlif is "one left (after ten)" and twalif is "two left (after ten)."
So then the question is, why don't we have threelif, fourlif, fiflif, sixlif and so on? The answer has to do with the development of number systems over history. A long, long time ago, when the number words were first being formed, most people didn't have much reason to distinguish numbers above ten. In fact, some languages of primitive cultures only have number words for one, two, and many. So the basic number words up to ten formed first, then they were extended a bit with the –lif ending.
Maybe there was a threelif, fourlif type system, but 11 and 12 were used more often in daily life. Many number systems are based on 12 because it's divisible by the most numbers, and because you can count to 12 on one hand by using your thumb to count three knuckles on each of the other fingers. (We have the word dozen because 12 is so useful). If 11 and 12 are being used more frequently, the forms for them will stick, even when another system starts to develop.
You can extend that idea to other number words. We have more irregularities of pronunciation in the tens (twenty, thirty, fifty instead of twoty, threety, fivety) because we've been making everyday use of those numbers for longer than we have for two hundred, three hundred, and five hundred). Thousand is an old word, but its original sense was "a great multitude," a non-numerically-specific, but very useful idea. The words we needed earliest, and used the most frequently are usually the most irregular.
So the short answer is, we created words for 11 and 12 a long time ago by calling them "one left after ten" and "two left after ten." They were more useful to us than the higher numbers, so we said them more and they became a habit that we couldn't shake.
Kids always notice the weird bits about language better than grownups. Thanks to five-year-old Katie English for this fabulous question!