If you want the best of both worlds (non-reversible, but with buyer protection), an escrow arrangement is the optimal solution. I would add that Bitcoin overall actually discourages fraud, since its market penetration is only 5-10%. That means a provider knows the buyer pool is more limited, making it all the more crucial to deliver to them what they want, in order to maintain a good reputation.