The relatively few openings are somewhat a by-product of the salary cap. Most championship contending teams find it is better to spend the $70,000 or so on upgrading a rotation player, say one of your top 8, than using it for a 12th player. The rebuilding teams might want to try to develop a rookie, and they can't use their cap space sometimes because good free agents don't want to come there.
In addition the high picks go to the weak teams, and the late first round picks in addition to being lesser prospects, go to the better teams that often are shooting for a roster of 11, not 12.