Você pode usar mod_vhost_alias para definir dinamicamente seu DocumentRoot. Por exemplo:
VirtualDocumentRoot e:/webs/%-2/htdocs
%-2
É um espaço reservado para a segunda última parte do nome do host. Outros exemplos estão disponíveis na documentação do mod_vhost_alias: link .
Em relação ao arquivo hosts, não é possível usar curingas no arquivo de hosts. Uma opção é instalar um servidor DNS local e adicionar uma zona para uso local e criar o registro curinga nessa zona. Um servidor DNS muito básico para o Windows faria o trabalho, eu não sou um cara do Windows, então não posso ajudá-lo com qual software usar.
Outra opção seria usar um domínio registrado on-line criando um registro curinga na zona DNS apontando para seu endereço IP local. Outra vantagem de usar um domínio oficial é que você não precisa alterar o servidor DNS em todos os clientes.