My react native app does some advanced stuff like displaying 3D stuff with openGL, running separate threads, interacting with drones and running neural nets (hence why I am happy about this news!). I still have to think how to upgrade to 0.60 while supporting threads though.
While it was not always super easy to configure all this, it has stayed unbroken for all this time so again this is something I am thankful for.
And I'm not even referencing the sorry state of third party components as well. Something as simple as a map component or bluetooth component would break on every release.
Oh, and then there's Babel choking on large complex projects in hard to debug ways.
My advice to you in your case would be find the versions that work and then stick to them.
Only update when needed and treat migrations seriously (in a separate branch, migrate, test everything and only merge once everything works perfectly).
That’s what we do and we did rollback several migrations because of various problems. But given our complex stack I think this is fair enough.