Você está pensando demais nisso. Você não precisa colocar toda a lógica em RewriteConds.
Quando o Apache obtém uma solicitação para um host que não corresponde a nenhuma das diretivas ServerName
ou ServerAlias
em qualquer um dos VirtualHosts, ele usará o VirtualHost padrão - ou seja, aquele que é o primeiro na configuração. Portanto, basta colocar sua regra de reconfiguração em um VirtualDomain separado e garantir que ela seja carregada primeiro, listando-a primeiro no arquivo de configuração ou nomeando-a, por exemplo. '00 -default.conf 'no diretório onde você guarda seus VirtualHosts.
Como a configuração nesse VirtualHost só será usada quando alguém se conectar e usar um nome de domínio que não esteja listado, você não precisa negar nenhum dos outros nomes de domínio. A configuração pode ser simplesmente
<VirtualHost *:80>
ServerName default.example.net
DocumentRoot /home/domain/public_html
RewriteEngine on
RewriteRule ^(.*)$ https://example.com$1 [R=301,NC]
</VirtualHost>
Veja link para uma explicação mais detalhada de como o Apache escolhe qual VirtualHost usar.