I had a quick look at the jBullet sources and they already look pretty much like something that Dalvik might like...except for this Stack-thing. It's doing a lot of Stack.alloc()-calls which refers to some other library that obviously instanciates temporary objects on the stack by doing some twisted bytecode fiddling...and i don't really think that this is a very good idea on Android, because Dalvik actually doesn't use Java-Bytecode but has to convert it.
What i would try to do, is to replace this Stack-class by some pooled entity class, i.e. something that takes the alloc-call and simply returns an instance from a prefilled pool. Of course, these instances would never be returned to the pool and so this implementation will run into either an empty pool or an OOM error, but it might be sufficient to see if that actually can help to improve things.