Reducing this to a simple language fanboy war is a massive oversimplification. Recent memory bloat and performance issues happen everywhere, whether it's C++, Java, or React. In most cases the real culprit is architecture and implementation not the language. Such as embedding browser engines just for cross platform UI.
You talk as if language choice dictates performance but even C# allows active stack allocation for optimization. Conversely C++ becomes a bloated mess if poorly implemented. In fact terrible C++ code has caused issues for decades.
Ultimately the root cause is that as users' available memory expanded, developers (or rather, management) stopped caring about memory usage. This approach is finally hitting its limit and alternatives are emerging.