Trying to get permissions on a large result set is a problem. I'm not sure this is completly a permission problem since putting plsql in any query returning a large (>100 rows) result set can be a problem. If a function takes 10 ms and you run it 100 times it adds up. I need to mess with the all_object_party_privilage_map and see how it works.
As an aside ... yes, using the view is absolutely the right thing to do if you're working with a large resultset. Feedback as to how much that helps on your large object space would be very useful.
So far, every permissions performance problem that has raised its ugly head has been solvable (knock wood).