Most likely bind9 is also listening to the lxdbr0 network interface. When that happens, LXD’s dnsmasq cannot work and you lose DHCP services as well.
It is default for bind9 to listen to all network interfaces. Limit it not to listen to lxdbr0. There are several posts in this forum on how to do that.
It appears that you already have DNS caching (by systemd, in 18.04 or newer) so you wouldn’t need an additional DNS cache. Run the following to verify,
systemd-resolve --statistics
Also, if LXD is unable to spawn its own dnsmasq, it should complain in /var/snap/lxd/common/lxd/logs/lxd.log. Can you verify that you are seeing such an issue there?