Custom Tomcat resource factories have been discussed in the past, you might want to read the comments on the subject. In sum, it would make a fine addition. If it has not been done already is due to lack of time. However, employing the shared ProcessEngine instance returned by Configuration.getProcessEngine() might be a bad idea due to class loading concerns. In fact, the exception thrown while setting a field via reflection is the telltale sign of class loader conflicts.
Please create a feature request for a process engine factory in JIRA. I will help you get the code right and update the shipped Tomcat configuration so that the custom resource factory is deployed by default in jBPM 4.5 and future versions.