Hello, all!
First off, I'm firmly on the side of answer (C) here, like earlier posters. If we run a straight comparison between (C) and (D), there doesn't seem to be any real advantage to (D). For instance, while you might object to the use of the better in answer (C), answer (D) also uses the better (and of course, without a than, which wouldn't be idiomatically appropriate with the better anyway. So what really differentiates these two answers from each other? Only the placement of things: one, the first, and of the two. The question is how the different positions might affect the grammar or meaning/clarity of the sentence. And while this is a fairly close call, the phrase the better of the two conveys the clearest meaning in the most idiomatic way (a more common idiom related to this is the best of all). Even (D) would read better if that portion were written the other way around: John agreed that the better of the two was the first. As with most idiomatic issues, there's not really a great rule to cite--idioms usually just are the way the are, unsatisfyingly. In further issues, the use of one is a bit awkward in both (C) and (D), so that's not a great reason to pick one over the other.
One other minor point to raise here is that indeed this is not a particularly test-like question. One pretty clear giveaway is that all the answers start with John agreed that; generally speaking, the GMAT starts its underline where there are differences to introduce in the answers, so if this were an official question, one would expect the underline (and the answer choices) to start after that.