Do you want to keep your name off the internet (and by implication, your location) or do you want to prevent the SPAM associated with posting your email address on the internet? Both require never-ending diligence.
In my experience it is possible to prevent SPAM; but to remain physically hidden requires much more effort and most likely you will end up exactly where you started. Instead of lost time, it’s probably less expensive to invest in theft insurance.
Some folks just depend on their email filters to help eliminate SPAM, but to prevent SPAM, use a Contact Form.
A Contact Form can be used on your own website, and you may be allowed to use Contact Forms on other sites such as Facebook. They enable you to communicate by email while hiding your personal email address. Some Contact Forms are free, and a higher cost does not imply better security.
Their security can vary over time, such as when the Contact Form company is sold to a less ethical owner. If you use one, you might want to create an ongoing Google Alert on the name of the Contact Form to help you catch the first warnings of trouble, thus helping you decide if you need to replace the Contact Form.
If you have already posted your email address on the internet, the only way I know of how to stop the SPAM that is already coming to your email address is to change your email address.