I think this comment pretty well summarizes my argument on it. The only parts not addressed:
Passwords can be short and simple. API tokens are lengthy and random, and you can't change that.
You can, as most modern web services including github do, have a minimum length and complexity for the password. That's a very important part of the process yes.
Plus, you seem to still not be grasping the core of my argument: github still authenticates with a password. You can still log in to the web site and change everything, if you compromise someone's password, whether because it's insufficiently complex or for any other reason.
Also, you never type in your API key, and that can help against shoulder- and camera-surfing.
I would like to see a quantitative comparison of how many github compromises there have been because of a stolen API token vs. compromises of some comparable service from a shoulder-surfed password.