Solve too many of those problems and you've invented PKI...
Verifiable trust - if it's a recipient you care about, you can phone them and ask if the key is correct.
Key revocation - easily done using email headers.
Portability - I proposed a portable system. Make it part of the email standard, just like the "Subject:" metadata.
Solve too many of those problems and you've invented PKI...