> A car passing another at exactly 55mph while another car is going the same speed will take forever.
Why would either driver would try to pass the other if they are going the same speed? If they're not passing then they should move to the right out of courtesy. (And they're legally required to in some states.)
> The problem is that if you get too many people stacked up behind the truck who won't pass because they won't accelerate past a speed limit, nobody can pass and people will be trapped for hours at half the speed limit.
If the truck driver is traveling "at half the speed limit" at any point then it should be a simple matter for even the most principled drivers to pass them quickly and safely. Whereas if the truck driver is traveling near the speed limit then the line of people "trapped for hours" are also moving near speed limit which seems fine. Plus, drivers of slower vehicles (trucks, RVs, farm equipment) are often courteous and pull over occasionally to let other drivers pass.
So that leaves cases where someone is driving a bit under the speed limit and is unwilling or unable to move to the side to let others pass. I don't begrudge someone breaking the limit by ~5mph to pass in such a case, but I also don't mind being "trapped" behind someone who scrupulously obeys every single traffic law even if it slows my journey by a few minutes. That would certainly be preferable to the unsafe behavior I see out on the roadways on a daily basis.