Lets say, once in half hour or hour. More could be bad, because what about I didnt get the item I needed and I wish to go back for it? Traveling to instance again after a hour cant be farming a cave...
Or here can be a bit better (imho) solution for this.
Simply limit an instance of one cave to lets say 5 people. I mean we all know that it is a megaserver an so on. It has a lot of instances for each area. So let it be very limited amount of players for cave area instances. That will make spawn of the mobs much more rare (because I know that spawn time is dependant on how many people are hanging around) and, therefore, cave farming not so beneficial.
Thats it.
Btw, this will also work well in combining with your solution.
PS: Also, just as single player fan, It would be great to have an option to walk through some caves alone.