Oracle, Cursor_Sharing = Force and Queries with literal comparisons forcing FTS
You can not correct a bad implemented application from the database side in such a way that it will always work as expected. With cursor sharing the database tries to prevent parsing. This works when the application uses bind variables when working on item/person level and literals when working on group/class level.
You could try cursor_sharing force. This could correct some queries but at the same time hurt others.
You could try sql plan management but in my experience, when you really need it, it fails. Especially with literal littered applications. Sometimes you have luck but don't underestimate the amount of work you need to put in them. Auto sampling of plans is not the best idea here ....