Você precisa usar a extensão SSL chamada Indicação do nome do servidor (SNI). Essa extensão permitirá que o servidor determine para qual solicitação de host virtual nomeada foi designada e corrigirá adequadamente.
Seu apache provavelmente foi construído com suporte a SNI, mas para isso basta configurar dois hosts virtuais de nome em seu IP, porta 443 e tentar iniciar o apache. Se o seu apache não suportar SNI error_log mostrará "Você não deve usar hosts virtuais baseados em nome em conjunto com SSL !!" Se o SNI estiver integrado, o log de erros mostrará "[avisar] Init: os hosts virtuais SSL baseados em nome só funcionam para clientes com suporte a indicação de nome de servidor TLS (RFC 4366)".
Esteja ciente também de que os navegadores também precisam suportar o SNI para que isso funcione. Ainda bem que todos os principais navegadores suportam
- Mozilla Firefox 2.0 ou posterior
- Opera 8.0 ou posterior (com o TLS 1.1 ativado)
- Internet Explorer 7.0 ou posterior (no Vista, não no XP)
- Google Chrome
- Safari 3.2.1 no Mac OS X 10.5.6
Portanto, em resumo, você pode ter 2 ou mais domínios diferentes com seus respectivos certificados SSL no mesmo IP, basta configurar outros domínios SSL de maneira muito parecida com o seu primeiro. Se o seu apache não tem suporte para o SNI, você precisará encontrar outro pacote apache ou reconstruir este com suporte para o SNI para que ele funcione.