Card generation upsets a lot of players, but also allows for more game variety and situational play.
Possible fix: Why not make generated cards known to both players?
The player generating cards can still respond flexibly to the game state, but her or his opponent will have a much better idea of what to expect and can plan and play accordingly.
kind of okay with the idea... similar to TCGs wherein you have to prove / show to your opponent that the card you tutored is indeed the one mentioned in the card played
"Search your library / deck for X card and show it to your opponent, afterwards, shuffle the deck"
somewhat gives you an idea that a said card is in hand and gives you a chance to play around it (as you said) but I don't think blizz will implement such mechanics...