To my knowledge, there is no way to override entire doctypes (though it would be a tremendous help if there were one).
In the meantime, what you can do is use fixtures to add your custom fields
(see: Schema modification export (custom fields))
and use hooks.py to override specific methods
(see How to override method in frappe?)