(Things are different in a 2 QB league or with very deep rosters. Also, rostering a low-upside veteran who will never see your starting lineup, like Chad Henne as your QB4, is an even worse idea than rostering a decent prospect like Osweiler or Nassib.)
In general I find that trades in superflex or 2QB leagues are based on need not hope. That is, if someone's QB2 goes down and Henne is still starting, it will be easier to get modest value in trade for him than a backup with little chance of starting any time soon. Holding Henne and Fitzpatrick both works as a trade chip (and one that's easy to let go if you find someone with need) and reduces the pool of QBs available. If you're not prioritizing Kyle Orton in a 2QB dynasty right now, you're letting a potential trade chip slip away. Sure he will never start for you, but that doesn't mean you want him starting (or providing depth) for someone else. I would prefer a solid stopgap like Orton in Buffalo, Weeden in Dallas, Clausen in Chicago, or Tarvaris in Seattle, over a "what if" prospect like Griffin, Savage, Kellen Moore, Aaron Murray, for a lot of the reasons you gave in your post, that most of the "what if"s are "probably never"s.
That paragraph was unclear - I intended to say that rostering Henne in a 1 QB league is a terrible idea. I was agreeing with Adam's point that rostering low-upside veteran QBs is a bad idea in standard leagues, despite disagreeing with his claim that rostering non-pedigree QB prospects is a good idea. Fitzpatrick or Nassib? The answer is neither (in start 1 QB leagues, with 250ish position players rostered).
In a 2 QB leagues the calculation is very different, and there are probably 50+ QBs worth rostering (including all 32 starters).