The cleanest way is to make sure neither resolver is binding to "any". If DNSmasq is on 0.0.0.0:53, I would assume it can still grab/reply on the VIP in some cases. Bind DNSmasq only to the LAN address you want the family clients to use, and bind dnscrypt-proxy only to 192.168.1.53 and 127.0.0.1. Avoid wildcard listeners for this setup.
You can't really "repair" poisoned ISP answers after the fact, especially fake IP answers. DNSSEC validation only helps if the domain is signed and the resolver actually validates or you validate locally. For DNSmasq forwarding to ISP without putting ISP DNS into OPNsense system DNS: configure DNSmasq with explicit upstream servers, not "system DNS"/DHCP-learned ones. If the GUI doesn't expose exactly what you need, use the custom DNSmasq options for `server=x.x.x.x`.
You can't really "repair" poisoned ISP answers after the fact, especially fake IP answers. DNSSEC validation only helps if the domain is signed and the resolver actually validates or you validate locally. For DNSmasq forwarding to ISP without putting ISP DNS into OPNsense system DNS: configure DNSmasq with explicit upstream servers, not "system DNS"/DHCP-learned ones. If the GUI doesn't expose exactly what you need, use the custom DNSmasq options for `server=x.x.x.x`.
"