I think you should try and increase your filtration is possible. I'm assuming these are internal filter is you are talking about? They forget the tank is a very big to start with, you're wanna take up all the space of filters. I would advise you if possible to get a large canister filter. If you go to a company called Hagen, they manufacture a filter called a fluvel, in fact there are various sizes. If I was in your position, I would get a 404/5, this would be excellent on your tank. It would actually give you twice the filtration you need. If not, you could always go for a 305 (I think that's the model)
I would advise you not to put the goldfish in with the Oscar. Goldfish are actually extremely messy creatures and will just increase the chances of you having poor water conditions. I think a cave is definitely a good idea, fish do like places to hide. From my experience, I've not actually have Oscar is that hide that much. They will probably do more as babies rather than when they get older. It'll probably be good to have something for them to hide when you first put him in the tank, they can be very stressful for them at this time.
As for substrate, if you want something that is easy to clean, go for sand. The good thing about sand is all the crap sits on top, unlike gravel where you've got to use a gravel vac to clean it. You can keep sand extremely clean with very little effort. I reckon it takes a quarter of the time to clean sand and it does gravel. I have got white sand in my 125 gallon tank and it looks beautiful. Okay, the diet does show up but it really isn't that bad.