Pocket Edition was a stripped down version of the game to support the xperia play, so it was built for optimization from the start. Later it got support for broader Android devices and iOS, while Mojang outsourced console development to 4J studios. Eventually, they decided to beef up Pocket Edition to be mostly feature complete with Java, renamed it Bedrock, and made it the de facto standard for all devices, sunsetting 4J's port.
Is there a source for this? I don't remember any language to suggest Java Edition would eventually be replaced when they announced Windows 10 Edition. They've always indicated that they intend to keep maintaining the Java Edition, with parity in the core game. The messaging here has never changed, as far as I'm aware.
If anything, they might have just done the rename simply for standardization over 9 different app stores with different requirements, branding requirements, and length limits before truncation occurs.
Bedrock is more performant and more portable across platforms (e.g. on consoles where you couldn't mod anyways).
As for feature parity, there are mods backporting modern features back to 1.7.10.
Java is also portable to all the consoles, its just Microsoft did use that as an argument to try to kill the Java Edition. Nobody prevented Microsoft from adding bedrock like modding to Java Edition.
The only thing that needs to happen is the one single stable mod API for Minecraft Java Edition. The incompatibility between Forge, NeoForge, Fabric, etc. is terrible, but from what I know about some of the folks involved this won't happen as they cannot constructively discuss the matters.
Much of the cashflow is from kids watching a YouTuber doing something in Java Minecraft and attempting it themselves in bedrock, which is why feature parity is the only thing they’re really working on anymore.
Bedrock is aimed at kids and they've never made any real effort to supplant Java with it. It's just a very effective way of hitting different target markets
They have no need to supplant Java, nor any desire to (and all their marketing materials and screenshots are usually Java anyway).
Microsoft logically wants to keep sales from both.