Why a new answer to an eight years old question which has already received excellent answers? One point has not really been addressed so far. Quote from the question:
Latin languages, as well as English, speak numbers from left to right, in the same direction in which they are written, e.g. forty-two, quarante-deux, but in German, you write from left to right but speak numbers from right to left, in the opposite direction.
Expressed pointedly, this suggest that spoken German reverses the correct order of digits. The accepted answer rightly says that
Spoken language was in existence before written language. Many numerals existing today were created long before reading was practised, so if there is any direction in a language at all, German does not "read" "backwards", it speaks "backwards".
My point is to discuss the tacit assumption that there is a natural (or if you want: correct) order of digits. In fact, writing numbers as we do it has become a global standard, but is has nothing to do with the (European) way of writing from left to right:
Latin is written from left to right, but Roman numbers have a fairly weird structure (I, II, III, IV, V, VI, .., XCII, ..., CXXI, ...). Nevertheless they have succesfully been in use for centuries, although it is annoying to perform elementary algebraic operations like addition and multiplication. This shows that written and spoken numbers may significantly differ.
Arabic script is written from right to left. Numbers are nevertheless written exactly as we do (of course with Arabic numeral symbols), for example 13 = ١٣, 19 = ١٩. From 11 - 99 they are spoken in the form 11 = one and ten, 56 = six and fifty etc. Thus, for two digit numbers, this corresponds to the Arabic reading direction. Bigger numbers are spoken in the form 382 = three hundred and two and thirty. See here. This is very similar to German.
Our modern numeral system (the Hindu–Arabic system) is a positional numeral system in which the contribution of the digit at position n from the right to the value of the number is the product of the value of the digit by the (n-1)-st power of 10. For example, 2614 means 4 x 1 + 1 x 10 + 6 x 100 + 2 x 1000. This is just a convention, but writing numbers with this system means that we must arrange the digits in the "correct order" which has mathematical, not linguistic, reasons. But there is no compelling necessity to use a positional numeral system for writing, as the Romans have proved. Anyway, each numeral system must have clear conventions and once people know them, numbers will be correctly understood in written and spoken form. These conventions may differ in writing and speaking, and German has certainly other rules for speaking than English, French etc. But native speakers do not have a problem with that, communication works.
The introduction of the Hindu–Arabic system has of course been a success story. However, they reached Europe fairly late which in my opinion proves that speaking and writing are decoupled. Quote from Wikipedia:
The first mentions of the numerals in the West are found in the Codex Vigilanus of 976. From the 980s, Gerbert of Aurillac (later, Pope Sylvester II) used his position to spread knowledge of the numerals in Europe.
The European acceptance of the numerals was accelerated by the invention of the printing press, and they became widely known during the 15th century. Early evidence of their use in Britain includes: an equal hour horary quadrant from 1396, in England, a 1445 inscription on the tower of Heathfield Church, Sussex; a 1448 inscription on a wooden lych-gate of Bray Church, Berkshire; and a 1487 inscription on the belfry door at Piddletrenthide church, Dorset; and in Scotland a 1470 inscription on the tomb of the first Earl of Huntly in Elgin Cathedral. In central Europe, the King of Hungary Ladislaus the Posthumous, started the use of Arabic numerals, which appear for the first time in a royal document of 1456. By the mid-16th century, they were in common use in most of Europe. Roman numerals remained in use mostly for the notation of anno Domini years, and for numbers on clockfaces.
Cyrillic numerals were a numbering system derived from the Cyrillic alphabet, used by South and East Slavic peoples. The system was used in Russia as late as the early 18th century when Peter the Great replaced it with Arabic numerals.
Let me close with a remark concerning the "correct direction" of writing and speaking Arabic numbers. We do it from left to right, and this seems to be natural because we write anything from left to right. But if you think about it, it appears not that logical: The contribution of a digit (value of the digit times a power of 10) is determined by its position read from right to left, i.e. in the opposite direction. This is nothing else than a convention. I think one could very well argue that writing numbers in the opposite direction (for example 314 instead of our familiar 413) would be more favorable because the power of 10 which gives the value of a digit agrees with its position in the "new" writing direction. One could of course believe that the reason for writing numbers as we do is that the digit at position 1 from the left makes the biggest contribution, i.e. is most important in a sense. However, the simple reason is that they have been imported from Arabic script without changing the order of digits. For example, the number ١٣٢٩ got the form 1329. See 2. above. By the way, a punch line is that Arabic numbers have been imported from India to Arabia - and in Sanskrit the writing and reading direction is from left to right as in European languages. It seems that the import of numbers twice happened without changing the order of the digits in the foreign source - although the writing direction as such is the opposite.
Our way of writing and reading numbers causes a problem: You must first determine how many digits your number has before you can begin to speak. If the number has only a few digits, you see that at first glance as e.g. for 1045, but if it is a big number, this is not easy as e.g. for 473078977440658967, even if digit grouping like 473,078,977,440,658,967 is used. By the way, digit grouping is used when speaking - for example 96,102,239 is 96 million, 102 thousand, 239. The "big number problem" indicates that speaking numbers in the other direction from right to left would in a sense be easier, for example 58967 = "seven - sixty - nine houndred - eight thousand - fifty thousand" or perhaps using digit grouping from right to left. Morever, it would be consistent with the ascending values of the powers of 10 from right to left.
Do not believe that there is a perfect logical approach to writing and speaking numbers. But admittedly the English way of speaking is more compelling than the German (if we put aside the numbers 11 - 19).