The problem is that a URL in an HREF has either an IP or a hostname, and there are more hostnames than IP addresses by some orders of magnitude. So, when running a web server, we will conventionally map more than one hostname to a single IP address, leading to several different hostnames that all have separate potentially unrelated content trees.
So, if Google will be pre-fetching DNS queries and passing the results onto clients, how? What I'm saying is, <a href="something", the form of links, and you have to set that href to something specific and concrete, and the browser is going to honor it and send the client request there. That's how web links work. You're suggesting the server should tell the browser what hostname to send in the server request (so the server knows what content to provide), but give it also (unchecked) a pre-calculated IP address to send the request to, so the client saves time looking up that result in DNS. How? And how should the browser client know to trust it?
You can't make the browser check if the mapping is valid, or you lose the speed benefit that you hoped to achieve. Also, browsers don't have a pathway to receive this information separately or out-of-band. So, where does it go in-band? The standards weren't written to pass this information apart from each other, the answer is that doing it that way would present a new threat vector and there is no place for it in any standard that exists. (Correct me if I am wrong.)