Descobri o problema... Toni tinha uma boa sugestão (mas cancelar o registro do driver significava que, quando o aplicativo era recarregado, o driver não estava mais disponível!).
No nosso caso, incluímos acidentalmente ojdbc6.jar com nosso aplicativo da web E no diretório Tomcat/lib. Isso provavelmente fez com que o Tomcat usasse nosso carregador de classes para criar objetos. Assim, quando nosso aplicativo estava sendo descarregado, o pool DBCP do Tomcat ainda tinha identificadores abertos para classes em nosso aplicativo.
A remoção do ojdbc6.jar do nosso WEB-INF/lib resolveu o problema.