Si tienen todo tan mal, parte de tu proyecto puede ser reorganizar su base de datos, si lo aceptan implicaría más tiempo/dinero.
Personalmente no me gusta Hibernate, pero aparte de mis gustos, creo que en el caso de bases de datos que ya están montadas, sobre todo si están mal hechas, MyBatis es mejor opción.
http://mybatis.github.io/mybatis-3/es/