Basically, it's due to poor road design and system, coupled with bad m'sian driving attitude is what causes the jams.
Eg of poor system:
By rights, merging traffic should have the right of way, and cars on the highway should yield to merging traffic. That's how it works in other countries. Why?
1. Braking is faster than accelerating
2. Merging cars cannot see oncoming traffic. However, oncoming traffic can see merging traffic.
Poor signages (a.k.a lousy design). Example: "<- Petaling Jaya, Shah Alam ->" If I want to go to Klang, I'd have to extrapolate my location against PJ and Shah Alam, and then process the direction I want to go, and at the same time change lanes, watch for traffic, etc. It will be MUCH easier if the signs said "<- Federal Highway-East, Federal Highway-West ->". Worse still are the crappy signs on highways like this:
Pusat Bandaraya (some number) 15 km
Kuala Lumpur (some number) 20 km.
Good grief, that few seconds of confusion is going to cause a bloody accident at 110 km/h