Stop the Use of Disposable Email Addresses in WordPress

This solution is okay. The only problem is the size of that array of bad domains could grow quickly. So of course searching that array is O(n), generally. Not a big deal now at its current size.

There is also SpamHaus which you can use directly as a DNS server to check records of the offending domain.

Another option might be to block based on TLD, for example if you do not trust any .biz domains (most people do not).

I have also used Mollom for a very long time to stop spammers posting. https://mollom.com/