Não existe uma porta UDP "aberta", pelo menos não no sentido que a maioria das pessoas costuma pensar (que responde a algo como "OK, aceitei sua conexão"). O UDP não possui sessão, portanto, "uma porta" (leia-se: o protocolo UDP na pilha de IPs do sistema operacional) nunca responderá "sucesso" por si próprio.
As portas UDP possuem apenas dois estados: escutando ou não. Isso geralmente se traduz em "ter um soquete aberto por um processo" ou "não ter nenhum soquete aberto". O último caso deve ser fácil de detectar, pois o sistema deve responder com um pacote de Destino Inacessível do ICMP com o código = 3 (Porta inacessível). Infelizmente, muitos firewalls podem descartar esses pacotes; portanto, se você não receber nada de volta, não terá certeza se a porta está nesse estado ou não. E não vamos esquecer que o ICMP também não tem sessão e não faz retransmissões: o pacote Port inacessível pode muito bem estar perdido em algum lugar da rede.
Uma porta UDP no estado "escutando" pode não responder de maneira alguma (o processo que escuta apenas recebe o pacote e não transmite nada) ou pode enviar algo de volta (se o processo agir na recepção e se agir por responder via UDP ao IP do remetente original: porta). Então, novamente, você nunca sabe ao certo qual é o estado se não receber nada de volta.
Você diz que pode ter o controle do host de recebimento: isso permite que você construa seu próprio protocolo para verificar a acessibilidade da porta UDP: basta colocar um processo no host de recebimento que escutará na porta UDP fornecida e responderá de volta (ou enviará você um email, ou apenas surte e unlink()
tudo no sistema de arquivos host ... qualquer coisa que desperte sua atenção fará).