As a native, I'd translate 'Are you wearing a t-shirt or a shirt?' as 'Máš/máte na sobě tričko nebo košili?' 'Mít na sobě + acc' corresponds to 'have sth on' like 'Mám na sobě boty.' = 'I have my shoes on.'
'Nosíš tričko nebo košili?' sounds like a question about what you usually wear.
I've really been struggling to explain what is bugging me about this question and it is this-- in English, this syntax is really off. You might phrase your question like this if you were asking about appropriate attire, but If I was asking about what you usually wear, I'd use the plural (Do you wear t-shirts or regular shirts) and probably include the modifier 'usually' because it's not normal phrasing. Colloquially the question, out of context, would be phrased more like "are you wearing a t-shirt or a shirt". So my question is-- what are we supposed to be learning with this question? Difference between the present and continuous tenses? Or the words for types of clothing? Are we supposed to translate literal wording or the relative difference? I don't mean to make such a big deal about one sentence, but it's becoming one of the big challenges for me trying to learn Czech here-- when am I getting it wrong because of the lack of robustness with the app (and translational nuances), and when am I wrong because don't understand something about the language?
The English translation is really horrible! I can barely think of a time when you would use this construction. As has been mentioned in another comment this sentence really needs the addition of an adverb of frequency to make it work in English.
BTW I love Duolingo and this Czech course