To try to avoid all these complications, it would be better to rely on the existing BTC network in some way. One possibility is the "trusted insurer" as you suggest, much like an escrow (or even bank), which has an account for the seller and an account for the vendor, and the seller has to pre-populate their account with bitcoins. A trusted seller then requests a purchase from an account, and the escrow moves digits between accounts and the transaction is instant.
I think if it were possible to achieve this via p2p, there is greater benefit to the entire community, rather than just to create the same problems we have with fiat money. The only downside is trust, as you point out, which may in fact prove this to be impossible without beacons - much like Gox is still the biggest exchange by far, even though there are many to choose from. Bitcoins have mistrust built into the system, and it requires a lot of computing power to achieve...banks would have to have a parallel network (but then would face the same problems in their own). It may be an unsolvable problem in this context, meaning advanced trusted 3rd party escrows are the only way to do instant.
P2p indeed is the way to go.
As revenue from mining becomes scarce, it may be possible to have a bidding system as part of the bitcoin protocol to instantly guarantee a transaction. miners or anyone else on the network can bid to guarantee the transaction for a fee. This is an addition to the current transaction fee. We could have a sort of reverse auction where the payer could select the lowest bid.
So for example, I want to pay for my coffee and donut at dunkin donuts with 1.0 BTC with instant confirmation and offer an instant confirmation/guarantee fee of 0.05 BTC. Someone can choose to take it and instantly confirm the transaction. That someone needs to be a party acceptable to both me and dunkin donuts and lets say for the sake of argument it happens to be Mt. Gox. We both agree and the transaction is completed. If later, it turns out my payment was bad, mt. gox has to pay dunkin donuts the proper amount.
Of course, technically instead of Mt Gox, it could be any Bitcoin address and based on that addresses' reputation for handling guarantees, users would accept them as the transactor. So as long as we know Bit coin address 1QaZ234ksk5jjfllsl5yuehdmk3kdKjd is a reputable guarantor, we wouldnt care who it was. In reality, it probably will be a few large entities or many moderately sized entities that folks recognize and accept based on user rating.
This kind of fee could be fairly more attractive way to earn bitcoins than mining. After all, confirming 1000 coffee transactions would net 50BTC, something that a guaranteer could do in hours and if bitcoin is widely accepted a large guaranteer could earn in a minute with very low risk. This would also be a very convenient and necessary feature to enable widespread bitcoin usage.