Any battleship-scale naval artillery is going to leave a mark when it hits, even if it doesn't penetrate through to the ship's vitals. There's still a lot of systems in the superstructure and upper decks to get messed up, and you don't have to sink a ship to take it out of the fight, rather just cause enough damage that it is rendered combat ineffective. As you say, it's evident from Samar that attacking a ship's upper structures rather than trying for penetrating vertical hits can take ships out of the fight.
And even if the battle had changed somewhat, in my opinion the fate of the Yamato and Musashi would have remained the same - deprived of adequate air cover and, despite their defensive armament, highly vulnerable to the torpedo planes and dive bombers of the day. A lot of people get caught up in notional battles and how the Yamato would have done fighting an Iowa-class, for example, but the fact of the matter is the Iowa would most likely be escorting a fast carrier, and that would swing the battle, not the capability of either battleship.
You might also find it interesting to look at the case of the battleship Bismarck, as it was as close to a floating fortress as you could get in the Atlantic in 1941, yet the most tactically significant damage was that done by Swordfish-dropped torpedoes that jammed her rudder and caused a semi mobility kill, enabling massed forces of the RN to catch up with her and sink her. She was an outstanding ship for her time, but for her rudder arrangement.