EDIT:
I've decided just reset the pi to the default raspbian because I was doing a lot of experimentation on it, so I wanted to remove any other variables. I went ahead and loaded up minibian and installed dnsmasq. I edited my resolv.conf to look like this (thanks to @Chuck Kollars for pointing out what that file was really doing):
domain hyrule.home
search hyrule.home
nameserver XXX.XXX.X.4
and only set my dnsmasq.conf to query out to these name servers (reading my hosts file by default):
server=/localnet/192.168.0.1 <--- still have the feeling this isn't right
## DNS SERVERS
#openNic california
server=173.230.156.28
#openNic Washington
server=23.226.230.72
In my hosts file, I also had the aliases set up as @Chuck Kollars suggested, with a format of
<ipv4> <subdomain> <fqdn>
at this point, I was still having trouble, so I noticed that whenever I pinged something like "tower", dnsmasq would try to resolve "tower.hsdn.comcast.com" or something like that, forwarding it on to the outside name servers because it didn't resolve internally. The comcast part looked familiar, so in my airport utility (5.6.1), under the internet tab, under TCP/IP, that same address was filled in the Domain Name field (ghosted, like it was inherited), so I changed that to also be hyrule.home, and everything worked as expected!
I'm still confused about why that domain name had to be in the router, and why it wasn't being respected from the resolv.conf file...