Django will try to clean the model instance even when the fields fail to validate.
In the past I did some dirty monkey patching in order to get a different behavior.
You can try that (at your own risk), but that might not be exactly what you want in the end.
You can read more about this here: Model.clean after errors on Model.full_clean - #6 by Scotchester