Ответ 1
Это сделать всю обработку объекта единообразной. Если я пишу C-код, который обрабатывает возвращаемое значение из функции, я должен увеличивать и уменьшать счетчик ссылок на этот объект. Если функция возвращает меня True, я не хочу проверять, не является ли одним из этих специальных объектов знать, следует ли манипулировать своим счетчиком ссылок. Я могу обрабатывать все объекты одинаково.
Рассматривая True и False (и None, btw) так же, как и все другие объекты, код C намного проще во всем.