I'm bumping your thread, because I was just about to start a new thread about a similar topic. Unfortunately, I don't know if I have a specific answer to your specific question, but I can tell you that you can go to:
iOS Settings > Mail > Accounts > Fetch New Data
From there, at the very top, "Push" is enabled on my iPhone. And under that heading I see my Gmail account is set to "Fetch" but my iCloud account is set to use "Push"
Note also that despite this all falling under the "Mail" Settings category, the fine print below Gmail and iCloud seem to indicate that this is pertinent to all of the cloud-related stuff (the fine print under iCloud for me states "iCloud Drive, Mail, Contacts and 11 more..." - I'm assuming that the Calendar app is one of the "11 more" but, sadly, drilling into the iCloud setting doesn't reveal what those "11 more" are). If you do some searching/reading online and play around with these settings, you may be able to improve your experience.
So now for my similar issue/gripe...
We're an Apple household with iPhones, MacBooks, Apple Watches, AirPods, and Apple TV devices (and probably some HomePod minis soon). One of our cars has CarPlay and I expect to finally upgrade one of our older cars this year and the upgrade will end up with CarPlay, too. We also have several HomeKit-compatible devices, and I've been standardizing on only buying new IOT devices that are HomeKit-compatible. I was already paying for 2TB of iCloud storage for backups and photo storage and we had the Apple Music family plan, so I just switched over to the AppleOne Premium plan for the same amount of money but with a couple of extras.
Note that I am not really a former Android user. I experimented with Android (and Wear OS) for a short while, but wasn't happy with what I'll just describe as "flakiness" with the overall experience, and the lack of a Messages equivalent was a huge deal. *BUT* I really preferred the UX of Google Keep, Google Photos, and Google Calendar. So I've been pretty happily using those apps. Google Photos provides a richer search experience than Apple's, IMO, and Keep and Calendar just *look* a lot nicer than Apple's equivalents. But I decided recently that I wanted to try to embrace (and force myself to be happy with) using iCloud for more things. And I do like Apple's security/privacy focus (even though I fully expect that they'll hand over all of my data to the government if they asked for it).
So with all of that said (sorry, being concise isn't my strong-suit), I just tried creating a calendar event (shared w/family) via the MacBook Calendar app. I then opened up Calendar on my iPhone (12 mini) and it wasn't showing. I read online that I could force a fetch by choosing the "Calendars" link at the bottom of the iOS Calendar app and then pulling the list down. It showed the spinning icon, but returning back to my day view still didn't show the event. I went over to my wife's computer and it was showing there. By this time, several minutes had passed and the event *still* wasn't showing on my iPhone. So I swiped up on the Calendar app and force quit the app (which, I thought with iOS, might not truly quit the app, but simply minimize it, but I just did an online search and read a blog post where the person claimed that this approach truly does do a force quit, so maybe it does?). That didn't work, either. I then powered down the phone and restarted it. Opening the app *still* didn't show the event initially, but a moment later it finally popped up.
I repeated the experiment with a couple more events as well as with changing the name of an existing event, and saw similarly very delayed sync times. I then did a couple of similar experiments with Google Calendar where the events synced up near-immediately. This is ridiculous. If I wholeheartedly embrace Apple iCloud for our calendar, contacts, and notes, am I just supposed to be content with horribly slow sync times? I haven't yet tried the experiment with the Notes app, but I can tell you that my wife and I will frequently collaborate on a Google Keep to-do or grocery list via the web browser UI on our MacBooks and then I'll run to the store with my iPhone where I can expect the data to be up-to-date. If the Apple Notes experience is anything like my Calendar experience, I don't know that I can live with that.
Getting back to the recommendation I made for lexvo at the top of my reply, I guess I can experiment with the Push vs Fetch settings to see if I can improve this. Apple seems to want to push me (no pun intended) to using Push instead of Fetch, as per the "Fetch New Data" screen some fine print states under the "Fetch" heading: "The schedule below is used when push is off or for applications which do not support push. For better battery life, fetch less frequently."
But wait...the fastest Fetch sync time appears to be "Every 15 Minutes" (unless "Automatically" is somehow faster) and at the very bottom of this screen it states "Your iPhone will fetch new data in the background only when on power and Wi-Fi." So by "on power" I assume they mean "plugged into a wall charger"? So these Fetch options don't sound like they'll improve anything for me. Ugh.