Intente agregar esta propiedad de Hibernate:
<property name="hibernate.connection.release_mode">after_transaction</property>
De forma predeterminada, JTA exige que la conexión debe se publicará después de cada declaración , que no es deseable para la mayoría de los casos de uso. De todos modos, la mayoría de los controladores no permiten multiplexar una conexión en varias transacciones XA.