According to its man page, dhcpcd apparently uses dhcpcd-run-hooks to run any number of shell scripts on each DHCP event (e.g. initial acquisition of IP address, renewals, and reconfigurations).
The locations for these hook scripts are given as /libexec/dhcpcd-hooks directory for system default hooks, and /etc/dhcpcd.enter-hook and /etc/dhcpcd.exit-hook for user-defined hooks, but this part could certainly be customized by the system builder.
You could find out where these scripts are located in your custom build, examine them to figure out what they do, and then augment, modify or outright replace the script that modifies your DNS settings to achieve exactly what you want.
The man page of dhcpcd.conf indicates there is even a nohook configuration keyword that can be used to disable one or more hook scripts.
The usage example is highly relevant to your question:
nohook script
Don't run this hook script. Matches full name, or prefixed with 2 numbers optionally ending with .sh. So to stop dhcpcd from touching your DNS settings or starting wpa_supplicant you would do:
nohook resolv.conf, wpa_supplicant