I never tried the DHCP relay, so I don’t know how dnsmasq behaves in such scenario.
Even if it’s not a bad practice to put the DHCP server in the DMZ, I think you’re over complicating the configuration.
Just put the DHCP server on the gateway and configure it to listen only on blue and green.
Server on the DMZ should have a static IP address.