Jag hade ett liknande problem men det var inte relaterat till ordningen på ID-fältet i databasen.
Efter lite sökning hittade jag detta pekar på det faktum att Lobs i Hibernate behandlas som OID om inte annat anges.
Det innebär att Hibernate kommer att försöka sätta en Lob i en Long och därmed skapa det undantaget PSQLE Undantag:Dåligt värde för typen lång
Sättet att ange att loben ska behandlas som text är genom att kommentera fältet
@Lob
@Type(type = "org.hibernate.type.TextType")