Bypassing the DNS system is trivial. All we need to do is write a browser extension with an input text box which connects to a blockchain and uses it to map custom names to IP addresses (with the mappings stored on-chain) and redirects the user to the IP address directly. The only centralized component is the initial peer discovery phase which requires some hard-coded seed IPs but you could have a large list and rotate the seed list frequently. Anyway, once set up, it would be fully decentralized... You could already do this by using any generic blockchain like Bitcoin. Just use transaction messages to store name-to-IP mappings.
The seed peer discovery issue is not a big problem once the network is above a certain size. Beyond a certain point, you could just ask someone from your local community for the IP address of a node. You just need one good node to be able to connect to the network.