At Coinbase, this is not true. You own your addresses. There is no "Hot Wallet". This may not be true of coins you just bought, that have just been added to your balance, but it's certainly true of coins you received as payment (to an address that you knew / gave to a customer / used in an API payment button on a website).
What Mint can't do without access to the API is know all of your owned addresses and aggregate their balances into one. Now as for the rest of your ideas, I'm not from California, but I honestly don't see any vendors signing up to use Bitcoins. Everywhere I go will take the Paypal card, but nowhere is offering to take bitcoin via NFC or QR code. Maybe "if you build it they will come."
I would like to have a way to export a global public key from my private key, such that customers could generate their own receiving addresses (for my wallet) without any sort of access to my private key, or third party. I have no idea if this is even a thing, but I also can't say for sure that it's not possible. If it were possible, I think it would also make it possible to pin the exact balance of a wallet, so I suspect it's not possible/an undesirable idea.