Ok, here’s a couple suggestions to deal with the two expensive AH operations:
Sniping:
Sniping primarily relies on grabbing recently posted items for cheap. Instead of making people constantly scan the entire database, provide an interface to track any item posted since $time. That could even be limited to once every few seconds. That would benefit both sides, since Blizzard would have fewer queries against the entire DB (a small cache could be used) and the snipers would get relevant data faster.
Cancel/Repost:
Cancelling to repost at the same price or a slightly lower price is a much harder issue. Fundamentally, this is a side effect of the fact that sellers have direct control over who's item gets bought. For the vast majority of items, there's more than one person selling it and all of them want to be the one to sell theirs. Since buyers primarily just grab the first/cheapest item in the list, a lot of sellers are willing to go to the effort to make sure they stay in that position.
Some people have suggested buy orders, and while still a great idea, the most that this would do is transfer the burden onto the buyer. Want to buy something, well you better be offering the highest price for it, otherwise the seller will just sell to that other guy instead. You also have to be willing to pay more than the goblin that knows how to turn it into vendor trash for a profit and can buy an infinite amount at a fixed price.
The best way to get people to stop cancel/reposting is to remove the player control over which item gets bought.
My suggestion for this is to randomize who gets the sale. (Yeah, I hate adding another layer of RNG too.) Instead of having the sale go to the person with the lowest asking price or most recent post, the sale is chosen randomly from the people with a selling price within some band (perhaps 10%). Anytime someone buys a commodity from the AH, they pay the lowest listed price. The seller, though, is paid the price they’re asking (minus the 5% AH cut). This would make it so that anyone within that band would have no reason to cancel and repost their items, since they are just as likely to sell their item now as they would be after the repost. And, of course, if they don’t need to cancel/repost, then they don’t need to scan the AH constantly.
Now, some people will still try to get their stuff to sell first by substantially undercutting the rest of the group. This would work until everyone hits their minimum price, at which point they actually have an incentive to raise their price slightly. Remember, the seller gets their full asking price, they just need to be inside that selling band.
Of course, this is a lot more complicated to implement than the basic market scheme that we have. But the key idea is that you don’t want individual players to have control over who gets to buy (buy orders) or sell (current AH) their items.