Best way to handle email sharing in CRM for safety

Best way to handle email sharing in CRM for safety

Hello :) 

We have CRM+ and are configuring email sharing. We have gone for the public sharing with blocked domains for our company emails, and other companies who may email with private information. 
We have some contacts in the business who have a normal domain (eg. @gmail.com) but we won't want their emails shared with anyone. In the case where they accidentally become a lead/contact in the CRM, what is the best way to handle this so that nobody sees anyone else's emails? Are we safer using the custom record-level sharing option, or is there a way to ensure a certain email never becomes a lead/contact? 

Thank you :)