Digging up an old thread.
I have identical issue to OP.
2 different VLANs and internal subnets, which have routing between them.
Both have DNS server run from the Fortigate interface IP, although have specified the DNS server in DHCP to match the gateway, to be sure.
I can resolve local DNS in each VLAN, and ping between them, but not resolve addresses in one subnet from the other. Entering the IP in a browser takes me to the page hosted on the opposing VLAN/subnet, but entering the A record address name does not. Clients are picking up the correct DNS server for the VLAN / subnet they have joined.
My DNS in each is setup identically to various other VLANs, which all work perfectly.
Worth noting the WiFI is handled by UniFi L2 switches, with the Forti as our L3 router/Firewall.
To add, I have also tried setting DNS server of the second routed VLAN for the clients, but this doesn't work either.