Should you create a custom user model for new projects?
No. Django's built-in models.User class has been tried and tested—no point in reinventing the wheel.
Yes. It is easier to make changes once it goes into production.
Yes, as there is no other option.
No. Using a custom user model could break the admin interface and some third-party apps.