What is the CORRECT way to get local hostname resolution without pihole as DHCP?

It uses 1.1.1.1 for itself, and hands out the pihole ip for DNS through DHCP.

That said, I think I fixed it. In my previous configuration, I had the router handing out the pihole as the primary DNS, and then (without much thought) I had set the secondary and tertiary DNS servers as 1.1.1.1 and 1.0.0.1.

A few days ago, I realized this was superfluous, and removed them, leaving only the primary. Since then I have had no problems with local hostname resolution, and my mobile ads were more consistently being blocked! It likely affected my Linux machines as well, but I wouldn't have noticed because they have adblockers. It's strange, though - pihole was definitely blocking (I had to frequently whitelist domains for my wife's work) before these changes.

So I think I'm ok now - thanks for your help, everyone! And Graysky, see you in Archland.