I use v6 internally (to learn about) but I block it from reaching the Internet because I'm not comfortable with it yet and my current ISP is v4-only anyway. What I'd like to do is keep Pi-hole answering both v4 and v6 queries for internal hosts but only v4 for external hosts as it is just wasteful and clutters logs. Is there a way to do this?
It's your clients that decide which queries they send. The most Pi-hole would be able to do is block certain answers.
I think you've already asked that question in Allow V6 local resolution only.
The same answers would still apply as of today.
In particular, yubiuser's comment pointing you to Pi-hole's regex extensions is now documented at https://docs.pi-hole.net/regex/pi-hole/.
Right, and I want them to get both v4 and v6 for anything inside my firewall so I can't just turn off all v6 queries.
Sorry. A mind is a terrible thing to lose.