Gmail website will also accept a CardDAV file as input. CalDAV as well for Calendar items. Not sure if Outlook can export these.
Might be easiest to turn on syncing of Calendar and Contacts between Exchange and Mac. Then enable syncing between Mac and Google. Then can turn off the Exchange sync.
Need to ask: how import are the emails REALLY? Yes, people like to hang onto every bit of email they've ever had, but, when was the last time you had to go deep into it? And does it have to be on Gmail? Reason is, mail has a lifecycle like much any other data file: we might use/look at it often for a couple of weeks, then number of accesses start to tail off, and after a month or two, probably never go back to it. With that, why not move the mails from Exchange into "On My Mac" folder(s): keeps copies for the future generations, and not spend time/effort to get the items synced to Gmail.