This has been a problem for me since fedora switched to systemd-resolver.
My basic LAN has a dedicated DNS (dnsmasq) and DHCP server. Other servers have a single name: no FQDN, only hostname. The dnsmasq server maintains a hosts file with the static ip addresses of those servers. I just installed F35 minimal server on a RPi 3. From that server, I can get the addresses of the local servers via dig and nslookup. But via other apps, like NFS, those hostnames are not sent to my local DNS server; rather they are sent to outside backup DNS servers, and sent to top level domain servers.
I have a working configuration on my home server lab, but unfortunately I’m away for a couple more weeks, the servers are presently offline, and I don’t have the configuration committed to memory. I did have to have compatible changes both on the dnsmasq server and on the other servers, I recall.
Bottom line is that I can’t help until second week of May. Hopefully someone else can assist in the meantime.
systemd-resolved does not resolve hostnames without suffix
To make systemd-resolved resolve hostnames that are not fully qualified domain names, add ResolveUnicastSingleLabel=yes to /etc/systemd/resolved.conf.
Warning: This will forward single-label names to global DNS servers which may not be under your control. This behaviour is not standard-conformant and may create a privacy and security risk. See resolved.conf(5) for details.
This only seems to work with LLMNR disabled (LLMNR=no).