Good question!
Your sentence “Nous en avons marre que vous nous répondez” is grammatically incorrect because after “en avoir marre que”, the verb that follows must be in the subjunctive mood. So it should be “vous nous répondiez” instead of “vous nous répondez”.
As for “on” vs “nous”, Duolingo often prefers “on” because it’s what French speakers use most naturally in everyday language to mean “we.” It’s not that “nous” is wrong it’s just more formal or less common in casual speech.
Finally, “vous” could actually work in the context if the parents are addressing several children, but Duolingo tends to assume a single informal situation (“on” = we, “tu” = you). So your version isn’t conceptually wrong, just not the one the program expects.