For example Trezor hardware wallet ( http://www.bitcointrezor.com/ ) generates its private key when it is first initialized. This way, the key never exists outside of the wallet.
Not sure that solves he upthread probem. If I give you a Treznor hardware wallet containing a private key to $150million worth of bitcoins - would you trust me not to have anther copy of that key? Or would you transfer them immediately to a wallet with a private key I could never possibly have known?