Hmmmm ..... do que eu posso dizer uma vez que um arquivo é aberto, as alterações nas permissões não importam. Os controles de acesso não são checados novamente a cada leitura / gravação, uma vez que o arquivo esteja aberto.
Assim, o que eu acho que acontece é o seguinte: o servidor apache de nível superior é executado como root (para que ele possa abrir a porta 80) e também abre os arquivos de log. Ao iniciar um subprocesso do servidor, ele provavelmente faz um fork () que copia os descritores de arquivos abertos para o novo subprocesso (ou seja, os descritores de arquivos de log entre um par de outros) e, portanto, os subprocessos podem gravar no log arquivos, mesmo que não seja root e, em seguida, altera o UID do subprocesso para o que for solicitado.