The industry always needs some pioniers willing to do the investment regardless of the naysayers.
It wasn't about needing a pioneer to show us that we'd been wrong; we weren't wrong. C++ just wasn't ready for the particular set of requirements that games imposed, yet. Once the state of C++ compilers began dramatically improving in the late 90s (by the criteria of optimisation and executable sizes), most studios moved over to the language pretty quick. Or at least that was my experience.
And the studios that were forced to adopt C++ when the PlayStation SDK required it.
So nothing speaks against other languages getting over the same kind of acceptance issues.
Also, Unity is built on a lot of 3rd party C++ code. From the top of my head, this is at least Mono, FMOD, PhysX, Enlighten and FBX.
IL2CPP was required to be able to stick with C# and stay relevant for mobile gaming. They forced themselves into this corner by wanting to stay with C# and become relevant for mobile gaming.
Compare all this to Unreal. By sticking to C++, they do not have to commit the same amount of resources to programming language related tooling.
IL2CPP is literally required on iOS but the perf gain you get on Android was never very good. Because of its general instability, a lot of games just ship in mono mode.
It's funny that you're saying both Burst and IL2CPP are required. Can't you see that Burst is an admission that IL2CPP wasn't the way to go?
Some studios don't want to mess that much with Unreal's C++.
Then Unreal has their own C++ runtime to allow for a tracing GC.