1) A self-signed cert provides zero protection against just about any attack that would work on clear text - any attacker can simply create their own self-signed cert and pretend to be you, and Google would have previously accepted this and happily accepted the incorrect mail. This is broken security in every way, and it is better to use no security since at least nobody can believe it is secure.
2) Self-signed certs are actually stronger than 'chain of trust' certs, provided you can trade the public cert in advance. Google should have a box on their POP fetch page where the public cert can be entered. This is more secure and the correct way to handle the problem, rather than blocking self-signed certs.
Self-signed certs are perfectly valid if the public cert is provided beforehand. Self-signed certs with the public cert used unchecked from the server is COMPLETELY BROKEN.
TLDR; Google needs to provide a box for the user to upload the mail servers public certificate.