The only reason why the EJB timer service isn't used is to avoid the dependency on JEE APIs. This way jBPM retains the ability to run in JSE environments. But if you've managed to use EJB timers, that's great! There are no actual pitfalls, just remember to set Hibernate's transaction strategy to JTA.
Would you be interested in contributing your solution?
I'm more than willing to give back by contributing this solution; just gotta test it a bit more and see if I can't make it a little more robust. :)