I think that argument clinic knows if the built-in function is supposed to be a method or a function.
It doesn't look too hard to add a new flag METH_IS_METHOD or something, which would be taken in consideration in the common cases, and which can be added manually OR used automatically by argument clinic.