The inch per gallon rule isn't a hard and fast rule. It's basically there to give a vague guide to how much fish it is safe to put into a tank if you are a newbie with moderate filtration and fairly easy going community species.
As you have noted, it can be bent in many cases, such as with lots of filtration, lots of plants, certain fish that need to be packed in (like some cichlids) and small peaceful fish.
It's essentially there to stop someone putting 20 guppies in a 5 gallon tank, or something else stupid.
However, to address your question of the oscar - a 12 inch long fish needs a large tank for two reasons. Firstly, there needs to be plenty of water to help dilute any pollutants before the filter can deal with them. Secondly, they do need a lot of swimming space! A 40 gallon would be 3-4 foot, which would only give a 12 inch fish 3-4 times it's own body length to pace around, and very little room to swim up and down or turn around. It would literally be like you living in your shower-room or walk-in closet. Adittionally, they need lots of space to stop them getting stunted as they grow up. I agree that an oscar needs an absolute minimum of 75 gallons and I would personally not want to put an oscar in less than 100 gallons.
I personally hold a rule that says give a fish at least 6 x it's own body length, ideally more. So I'd want to see fish like oscars, bala sharks and clown loaches in 6 foot tanks.
This rule can also be added to the inch per gallon rule and you get a good guideline for how big a tank needs to be for your fish.
I will add that there are two "stock caps" on a tank. One is a soft cap - the filtration cap. If you add more filtration, you can go over that cap. The second is a hard cap - the size of the tank and the needs of the fish in it. Too many fish can and will cause stress and make the fish much more likely to fight and get sick. This cap on the stock shouldn't really be exceeded.