Doctrine2 (а точнее doctrine-migrate) умеет делать diff между мэппингом табли на объекты и собственно имеющейся схемой. То есть если у вас в таблице есть поля, которых нету у объекта, то оно сгенерит SQL для дропа.
@bernex сложно сказать степень готовности, я пока тестировал на своём собственном проекте и наткнулся на простенькую багу с PostgreSQL, пул-реквест приняли оперативно. Возможно есть смысл посмотреть на список открытых багрепортов.