There is a preSave event that you can put your validate code on then you could warn the user that the form is not complete. I woudl not stop them from saving though as they may wantt o save and complete later.
Do you have a button on the form for them to do the email? That is where you should be doing the validation. I do not like to do it on the preSave as the user may want to save what they have done and come back and complete later ....basically a work in progress.
Not sure if the presign is the way to go either ...you will have to try it. I do not see a way to stop the saving, the validations will ony fire (automatically) on a submit operation (email from a button is considered a submit).
I'm having a problem with the required fields in that the user is not notified when they tab out of the field without adding data, only when they add data and then delete it. Is there a way to fix this?