I see a different solution to the problem: give the fans the option of a partial rebate in a situation like this.
The fans pay more money for a ticket to see a game with a high-caliber team like the Spurs. I think that if the coach decides to rest a bunch of star players for a particular game, the coach should advise the league as soon as possible. Then I think it should be open to the league, if they think the move was unfair, to allow fans to get a rebate from the regular ticket price. The league would then allocate that loss to the team that decided to rest the players.
So, for instance, if Miami is in Toronto and doesn't play Lebron and Wade, then fans should get a rebate so that the ticket costs as much as it would for say, a Toronto-Detroit game. Miami would then have to wear that loss, say by somehow compensating the Raptors for the difference in the ticket price.
That way, it's fair for everybody. Players get the rest they need. The team can decide if they want to risk the revenue loss. Fans can decide if they feel cheated, and if they do, they can seek out a rebate. The league doesn't look like the bad guy for imposing an arbitrary fine, instead, the league lets the fans decide if the team suffers a loss.
Probably for this particular Heat-Spurs game, the ticket price is high anyways, and fans might not even want a rebate. So I am guessing that the Spurs wouldn't have been risking too much financially.