Sendgrid has an inbound parse feature (https://sendgrid.com/docs/User_Guide/Settings/parse.html) which you can use to start building a framework - it takes any inbound email to a domain and forwards it as an HTTP request to an endpoint you specify. Used it for a few projects and its worked great.
Agreed, but there is nothing stopping you from having the authoritative name servers for a domain with different providers. As someone previously said, DNS was designed for this.