Yes, it's theoretically possible to adapt many protocols to many use cases, but that doesn't mean it's a good idea. Email and XMPP are just geared towards very different use cases.
In particular, Email has a lot of assumptions about acceptable delivery delays, bidirectional (non-)reachability etc. baked in that would be very hard to globally undo.
As programmers, is it not our natural instinct to create a ChatSystem and MailSystem on top of a GenericMessageDeliverySystem? When did we stop doing that? Creating a brand new GenericMessageDeliverySystem for each purpose comes with substantial costs. We don't reinvent the Internet to create WhatsApp.
In particular, Email has a lot of assumptions about acceptable delivery delays, bidirectional (non-)reachability etc. baked in that would be very hard to globally undo.