What you are proposing DOES expose the private key to the online device, as that is the only way that system could work. Protected memory and destroying of the app is just not good enough, security wise. Any of the existing hardware wallet implementations currently available will be MUCH more secure than that, as the private key never touches the online device at all.
Here is how your scenario would work with a hardware wallet:
1. Your coffee shop generates a QR code on their POS terminal for your amount of purchase
2. You use your phone's wallet app (watch-only mode - no private keys on device) to scan that QR code.
3. Your phone's wallet app generates a QR code with the transaction info for your hardware wallet with private keys to SIGN.
4. You use the hardware wallet's camera to scan your cell phone's QR code to get the transaction signature request.
5. The amount of transaction and payee are displayed on the hardware wallet's screen
6. You press the "sign/approve" button on the hardware wallet, and it signs the transaction and generates a QR code on its screen.
7. You use your phone's camera to scan the hardware wallet's signature QR code into the phone's wallet app, enabling the transaction.
8. The signed transaction is then broadcast by the phone's wallet app on the internet and shows up as paid, on both your cell phone and the coffee vendor's screen.
The offline signing can be done with a thin credit-card sized hardware device that consists of just a small screen, a button, and a camera. No bluetooth, no wifi, no USB, no connectivity at all. There is literally no exposure of the private key at any time. This is pretty much how all hardware "wallets" work. They don't do the work of a wallet, per se. They just sign transactions for your "online wallet" with your private key in an offline / hardware separated way.
PS, I currently use a Ledger HW.1 along with GreenBits (GreenAddress) wallet on my phone to do exactly what I described above, except instead of QR code communication between online wallet and hardware wallet signing, the transaction request and signing takes place through the hardware-restricted USB interface of the HW.1. It works amazingly fast (thanks to GreenAddress which is SPV with BIP70 support). There is still some amount of trust required for the Ledger wallet, as anything USB could possibly be backdoored somehow. I'm waiting for a device like the one I described above to hit the market. This one is pretty close to what I described, but still more connectivity than is necessary.
https://www.indiegogo.com/projects/coolwallet-most-convenient-bitcoin-cold-wallet#/story