The question and the answer offered by the OP overlook the key insight concerning inversion and subjects in English. This insight is expressed in the comments produced by Greg Lee, John Lawler, and aml. The reason subject-auxiliary inversion does not occur in matrix clauses when the subject is questioned is that the canonical position of the subject is to the left of the finite verb, whereas the canonical positions of all other sentence participants are to the right of the finite verb. Thus, inversion in matrix questions is necessary when something other than the subject appears in the initial position to the left of the finite verb, since inversion then helps identify that participant as a non-subject.
This explanation is consistent with an approach to syntax that grants the online production and processing of sentences a decisive role. Syntactic structures are produced and processed in time from earlier to later. If the left-most wh-expression in a question in English is not the subject, it must be marked as such by inversion, and this inversion then aids the processing of the sentence.
The explanation is independent of the particular theoretical apparatus that one prefers. The Government and Binding (GB) (or Minimalist Program (MP)) apparatus assumed in the question and the OP's answer is at best a tangential matter. One need not acknowledge various X-bar theoretic constructs (e.g. EPP, CP, V-to-C, etc.) for the explanation to work. I would even argue that such constructs result in opaque and obtuse linguistic reasoning.