Again, it seems like the flaw is in trying to form a long-term coalition instead of just passing the bills that have enough support to pass when you put them up for a vote among all the people who were actually elected. Why should anyone have to give a crap what someone else's position is on immigration when the bill in question is on copyright reform or tax incentives for solar panels?
The coalitions do a pretty good job of representing people’s pre-existing positions. People aren’t not voting for copyright reform because their party said so, but because they agree with their party. Party discipline in the US is not nearly as strong as in most parliamentary systems.