The GTT test isn't being done because your doctor doesn't believe you, he's doing it to see what's going on..
A fasting test only gives a figure of a moment of time, it states that at xxx time after a period of 12 hours of fasting your Blood glucose was XXX...
Which really unless your Blood Glucose is high, gives very little information and no information to how your body responds to an intake of carbs/glucose..
With the GTT, fasting for 12 hours gives the baseline, then drinking a known amount of glucose, then plotting the blood glucose over a period of time... They can see how your body responds to an intake of glucose.. This helps to determine the best treatment to start you on, may be diet or perhaps medication!
You've mentioned to your GP that you've have some high numbers after you've eaten and felt he dismissed these...
He hasn't actually totally dismissed what you've said, other wise you wouldn't had another fasting test or now a GTT, but your doctor would have been aware of the limitations of home testing and variable's that effect the results..
Such as tolerances levels (which is I think is 20% +/-) within the accuracy of the reading (which on a 9.1mmol/l you mention in you OP, could be almost 2mmol/l difference other way) then there's the carb intake accuracy, you might have calculated 20g's of carbs but actually ate 22g's.. You might even have carbs, fat or protein still impacting on your blood glucose from earlier! You might even had something on your hands when you tested, residue of another meal, soap residue or even water residue all can effect the meter's result..
A GTT rules out all these variables and gives as true full figure and actual response as it's possible to get.