Как правило, переводимые поля — это контент. И он никак не относится к бизнесовым модулям, где там какие-то инварианты сложные и прочие сложности.
А значит всю эту фигню можно хранить в табличке вида entityId::uuid | locale | values::json и не париться) и ни ORM не нужна, ни расширения для доктрины.