Just to help anyone out so you don't have to go through what I did to figure out my problem.
When I installed my pihole I pointed everything in my local network to the pihole including my network devices.
When I turned on conditional forwarding I created a loop between my router and the pihole. Basically any query my router couldn't solve was being sent to the pihole and the pihole would send another request looking for the same thing.
Solution was to leave my network equipment with their own public nameservers, specifically my router.
I now have local network name resolution and my dashboard is starting to fill up with hostnames.
EDIT: After going back and checking my changes I noticed only some of my IPs were resolving to hostnames. I figured out it was the default subnet I configured in the pihole webgui. None of my vlan subnets were being resolved to hostnames.
To fix this I have to make a custom dnsmasq .conf file in /etc/dnsmasq.d/ and define my other subnets and their routers:
From dnsmasq.conf :
# Add other name servers here, with domain specs if they are for
# non-public domains.
#server=/localnet/192.168.0.1
# Example of routing PTR queries to nameservers: this will send all
# address->name queries for 192.168.3/24 to nameserver 10.1.2.3
#server=/3.168.192.in-addr.arpa/10.1.2.3
Now all my local IPs regardless of vlan is being resolved to hostname - changes were almost immediate in pihole dashboard.