Leaving out Boeing would be budget suicide for NASA.
No one should be left out because there should be no contract. Instead, NASA should be fostering a spot market for launches. They should have a separate bid for each launch: "We want X satellite in Y orbit, and insured for Z dollars." Then give the launch to the lowest bidder. That way each company can work continuously to cut costs and improve services, knowing that if they leapfrog the competition, they can win the next launch, instead of being locked out for years.
Except there is not an existing manned spaceflight market, just like prior to the commercial cargo contracts their was not a commercial cargo market. If you award a contract to the lowest bidder (or for that matter, any other criteria) before any hardware exists, then only one company will develop the hardware. This is how it used to work, and is exactly what these contracts are meant to avoid. If you only have a single winner, and that winner is developing the hardware based on the contract they won, then when there are cost overruns they will simply tell you they ran out of money. Give us more, or we quit. Or, they will go out of business. You can't run a company in the red forever, even if you signed a contract.
If you are proposing that companies should build functional hardware and then bid, it's not going to happen (except maybe with SpaceX eventually, but they are the crazy exception with a non-financial goal. But it would not happen on NASAs timetable.) It's not going to happen because the risk to reward is off the charts. Spend billions of dollars developing a manned rated launch vehicle, capsule and infrastructure hoping to win a contract? No sane company would do that.
Now, once there is a real market for spaceflight, then investors may take a shot at entering it if they think they can win a piece of the pie. But that market can't exist until there are commercial manned launch vehicles. You have to prime the pump, at least if you want something on a timetable.