Troubleshooting oracle database errors from cloud application
ORA-01000: maximum open cursors exceeded is almost always an application error.  I'll put a large wager down that some part of the Java middle tier is failing to close a ResultSet in every case.  That causes it to leak cursors and will eventually cause this error.  You can increase the max_open_cursors setting in Oracle so that the cursor leak hits the limit more slowly.  You may want to combine that with more aggressive restarts of the middle tier and/or recycling of the connection pool as a temporary measure.  But the right answer would be to figure out where the application is leaking cursors and plug the leak.

Do you have any additional logging around the unable to create a connection error?  It is possible that you're hitting the maximum number of connections specified by your sessions setting (and the processes setting on which it depends).  If you really need to support more connections, you can always bump that up or move some of the connections over to shared server connections if they're using dedicated server connections today.  But I'd be concerned given the cursor error that the middle tier is also leaking connections.