Full nodes themselves have never and will never have any hard power over the protocol. If they did then a government could spin up a hundred million nodes and dwarf the entire network then UASF a consensus change that allows them to print unlimited coins for themselves.
What actually happened in 2017 was that most people who receive bitcoin in exchange for something else (products/services/fiat/whatever) individually decided to validate their incoming payments against a node running/signaling Segwit rather than not Segwit. That means more value transfers were gated/blocked by validation against Segwit nodes than against ABC/Cash nodes, so if you wanted to trade your "bitcoin" for something else in the economy it needed to be valid bitcoin according to Segwit nodes.
