You are oversimplifying this a bit too much. They know what the hell they are voting on for the most part and they are also well aware that there is very likely some pork in there as well.
They might not like the pork in there, but when it comes time to vote, if 90% of the Bill is the real issue then some pork they might not completely agree with isn't about to stop that bill from getting its votes if its something of any importance. A bill that should have passed but doesn't because of extra pork on it is a huge waste of time. And you also have to look at why that pork is in there to begin with - congressmen have constituencies they have to answer to...a lot of that pork is to make that important constituency happy. Happy constituency means you get reelected, and in the house that is a constant battle every friggen 2 years (which is too short imo).
I dunno, the solution is hardly simple. You can say "hey, read the whole fucking bill," but even if they do and don't like some of it, do they like what its mostly about and is it a key issue? If so...they will still vote on it. Most of us don't like it and I think it does need to change, but the whole culture of how legislation and what not also needs to be reformed and updated.
The answer may be to abolish Congress as it is, and just make the legislative branch a bunch of committees so that each committee would be tasked with enacting laws that pertain to their sphere of influence. Essentially this is what we have de facto as most bills are "passed" in committee and the votes on the floor of the House/Senate are just formalities. However, I think if we could just directly elect individuals of expertise to specific committees rather than having a handful of Congressional representatives serve on numerous committees, it would streamline the process somewhat and allow public officials to narrow their focus to certain topics. Would it require more elected officials? Yes, but then again since when can 535 public officials efficiently represent ~350-400 million citizens?