Usually, at least in Europe, if it's not due to linguistic drift or somesuch, it's because the name is just being translated. For example, the French name for the Netherlands, "Pays-Bas", is just a literal translation of "nether lands".
My guess for Germany, which certainly seems the weirdest, is that it's a result of that process happening and the name getting fixed at different times for different languages, combined with the region having a rather complicated political history.
Germany comes from Germania which is Latin. Deutschland is deutsch + land, and deutsch can be traced to proto-germanic origins (common root with Dutch, I believe). So Germany is not actually one of these cases; it's an externally assigned name.
My guess for Germany, which certainly seems the weirdest, is that it's a result of that process happening and the name getting fixed at different times for different languages, combined with the region having a rather complicated political history.