Eu também tenho lutado com esse problema. Este problema é provavelmente devido ao seu roteador não manipular corretamente o tráfego. Cloud.domain.tld é resolvido para o seu endereço IP público, portanto, quando você solicita esse endereço de sua rede local, o roteador não sabe como responder. A melhor solução seria ativar o Hairpin NAT na página de configuração do seu roteador. Se isso for impossível, você poderá definir seu domínio de pesquisa para o domínio simples (domain.tld) e definir o nome do host no servidor nextcloud para a nuvem, para que os dispositivos locais resolvam automaticamente o IP. Você também pode fazer proxy do seu tráfego fora da sua rede com uma conta gratuita do Cloudflare.