I touched this issue a little in another post here in this board. The question that needs to be asked is how do you define a decentralized network? An absolute decentralization like you suggest means that nobody has substantial influence on the network in any aspect. This goal is very hard to achieve as it's almost impossible to prevent people from colluding (just see how centralized bitcoin has become when it comes to the distribution of hash power).
Even if you do manage to create a complete decentralized network, I think it has nore drawbacks than advantages. Take bitcoin for example. It becomes pretty much impossible to implement necessary changes to the code. If you take it to the extreme, in a complete decentralized blockchain no bugs can ever be fixed as nobody holds enough power to change the code.
As long as the code is open source, I don't see a big problem with hard forks. Sure in blockchains like ETH, where the devs have a big influence, hard forks can happen once in a while. If most people abandon the old chain and move to the new fork, that means they think the change is good, or they would have stayed on the old chain. BCH is a good example, people who thought the fork was necessary moved to BCH and the others stayed on BTC.
To conclude, I think a certain level of centralization is invetiable in any network. The important part is in what aspects this centralization actually affect the network. In Ripple's case for example, the influence is absolute and I wouldn't call it a decentralized network. In ETH though, the influence of the devs comes down to potential hard forks in the future, which is something that I can live up with.
Interesting points that I agree with mostly. In the ETH example you cited though, the hard fork wasn't to introduce a core code upgrade, but rather to reverse a transaction. In my opinion no matter how bad it is, this is a fatal precedent that means I will never consider ETH decentralized. Imagine one day in an Orwellian society if the "decentralized" network can be reversed like this because the transaction wasn't theft but a thought crime. From a moral perspective of course the thief shouldn't get away with the money, but there's much, much bigger issues at stake here than a heist, the bigger picture here is the need to create a transfer of wealth system that cannot be tampered with by anyone at all.
I agree that hard forks should be possible for code upgrades, but definitely never, ever for a transaction reversal, transaction modification, or updating coin supply. ETH showed itself to be no better than Ripple. I hope future blockchains in the 3.0 realm will learn from this and whatever necessary, centralized hard forks they conduct, will never involve transactions.