Because of the preposition. As you'll see as you progress in the course, anything that's after a preposition doesn't take the accusative marker (the exceptions are with verbs of motion, where a preposition like "en" becomes "into" instead of "in", and "sur" becomes "onto" instead of "on").
No, because it's not specific enough. It needs to be they write IN German because then that definitely means that they are writing in the language of the Germans. Though it may be an acceptable way to say it and people probably would get it, your translation has the ambiguity of possibly meaning that a person is writing in the German language or literally writing the word German.
Many languages don't capitalize language names. Oddly though, they do capitalize only Esperanto. https://www.duolingo.com/skill/eo/Languages/tips-and-notes
Esperanto doesn't have a word for the French or German language. The words "franca" or "germana" are general adjectives that apply to anything that is French or German. You can talk about "franca pano" or "germana kolbaso", for instance. To speak of the French language, you say "la franca lingvo". The definite article "la" is needed to indicate it is referring to the normal, standard French language, and not some other French language like Norman or Occitan. This is normally shortened to just "la franca". This should really be wrong as there's no noun after the article, but all languages have their quirks and this is one of Esperanto's.