Well, this certainly isn't how you'd go about evaluating model quality. Calling which candidate a state will vote for is not a good task; it's too discrete to be a good evaluator. For the same reason, no political model produces this output. You predict the vote share given to each candidate -- a nice continuous variable -- you don't predict who will win. Calling the state is a gimmick on top of that (since victory is a function of vote share, it's easy to degrade your model's output into victory predictions) which serves only to make the statistics worse.
Again, calling individual states is neither necessary for a good evaluation nor even helpful to it. It is a further processing step that runs on top of a finished prediction. If you have a vote share distribution, you can convert that into victor probabilities with basic algebra. You cannot operate in the reverse direction, and you cannot develop a good model that directly produces victor probabilities as its output.
As we saw in 2016, trying to predict vote share is actually a bad idea for a presidential model, and predicting states is more useful.
He's not perfect (for instance, I think calling the 2016 model too certain early on is valid and I think some other people have basically equivalently-good models, but are less well known), but if confidence is smugness, then he has a right to be.