while making sure that events coming onto Outlook calendars cannot be updated by Users until the processing is completed
You can't do this in Exchange the way permissions work and the fact that all clients have equal status there is no way of locking or restricting access to calendar appointments, the best you can do in a Shared calendar is just give reviewer access to the whole calendar.
Processing and posting the events to calendars is very slow and the app currently prevents Users from working in the app
Probably you want to look at using the client credentials flow https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow and then impersonate the users you want to create appointments for. You can speed up the creation using batching in EWS https://learn.microsoft.com/en-us/exchange/client-developer/exchange-web-services/how-to-process-email-messages-in-batches-by-using-ews-in-exchange done correctly you can get a reasonable throughput (eg nearly all migration apps use EWS)