JTA somente com EJB

Boa noite, galera!

Gostaria de tirar uma dúvida. Atualmente, estou usando Hibernate (JPA) em um projeto, mas tenho feito toda a configuração das transações manualmente.

Segue o meu persistence.xml.

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
    <persistence-unit name="vendinha" transaction-type="RESOURCE_LOCAL">
        <!-- provider -->
        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
        <properties>
            <!-- propriedades JDBC -->
            <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/vendinha"/>
            <property name="javax.persistence.jdbc.user" value="root"/>
            <property name="javax.persistence.jdbc.password" value="1234"/>
            <!--  configurações do hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/>
            <property name="hibernate.show_sql" value="false"/>
            <property name="hibernate.format_sql" value="false"/>
            <!--  atualiza o banco, gera as tabelas se for preciso -->
            <property name="hibernate.hbm2ddl.auto" value="update"/>
        </properties>
    </persistence-unit>
</persistence>

Como deixo o transaction-type="RESOURCE_LOCAL" tenho que me preocupar com o controle das transações do sistema, o que para o meu caso, é uma péssima idéia. Aí então, adotei a idéia de usar JTA.

Lendo um pouco sobre o assunto, logo me deparei com a especificação EJB e, foi aí, que usar JTA não me pareceu mais tão trivial.

A pergunta então seria: Para usar JTA, o caminho são os EJBs?

Preciso de um norte.