I would say the main ones were difficulty finding apps and keeping them up to date (I ended up with three different ways of doing this, and it was hard to remember which was used for each app), certain apps that I needed to use not working (banking apps), unreliable push notifications for things like Signal, lack of good degoogled navigation, and battery drain. There were also a lot of little things like how much easier is it to work with the camera / photos on iOS. Overall it was workable and I liked GrapheneOS, but just decided the trade offs weren’t worth it.
I can understand your perspective, thankfully with things like Obtainium centralising installs from vatious sources for FOSS apps really helps. Banking apps 99% of the time require Play Services as a minimum as do reliable push notifications as any apps from the Play Store either directly or from Aurora Store frontend will depend on FCM (Firebase Cloud Messaging from Google). FOSS apps using web sockets or another implementation they'll require being exempted from battery optimisation. Also on the camera side Pixel Camera and Google Photos work together flawlessly for all Pixel related features alongside sandboxed Play Services but again if your preference is for iOS over Pixel methods there wouldn't be anything GrapheneOS could do. Glad you gave it a go and grateful for you taking the time to reply. Take care.