easy way out: make a view with optimizer hint already included.
it might be that your query is not well-formed to match the indices,
or the indices are misconfigured (doing an index for 2 columns in the wrong order can do exactly that),
or your statistics are bad. (if you have a newer database-version, use dbms_stats instead of analyze table!)
i'd go back to setting the db right, instead of trying to workaround on the application server - usually, its a big deal easier to set things straight instead of workaround them.