I'm wondering what exactly is apex.jdbc.MaxStatementsLimit parameter for and if/how the value should be adjusted.
Documentation says only: Specify the maximum number of statements to cache for each connection. Default = 10>
These are JDBC parameters detailed here http://docs.oracle.com/cd/B19306_01/java.102/b14355/concache.htm#CDEBCBJC
You may change the Max numbers to higher values, but do not reduce them. These have a impact on the memory used, and may not necessarily result in improved performance. You may need to find the right set with some trial and error.