Your info on how long it takes is out of date (edit: at least for companies not large enough to "optimize" the process; see comment below mine).
First, PERM currently takes about 16-18 months now. Processing times are way up: the PWD (Prevailing Wage Determination) phase alone is now 6 months; PERM certification itself is another 6 months (source: https://flag.dol.gov/processingtimes). To this you have add ~3 months for the recruitment phase, plus however many weeks/months it takes management and the lawyers to work out the job description. If you're audited (which I can tell from personal experience can happen for the most straightforward cases), that adds 4 months.
What's worse is that, as per our law firms briefing, due to a recent lawsuit that Facebook lost, companies now have to be more conservative with the recruitment phase (make a much stronger effort to find Americans). And with that, the recruitment phase should be expected to "fail" (from the perspective of the potential immigrant) more often, which can multiply the PWD and recruitment phase time.
This means that going forward, all in all it could take several years to get to PERM approved. If you switch jobs before you've filed I-140, gotten it approved and waited out 6 months (for portability under AC21), that resets the progress. Also note some companies like to delay starting the process until a few months after the employee starts working for them.
Now remember that the maximum duration of an H-1B (without an approved I-140) is 6 years (5 years for L-1B). So there's definitely a bit of time pressure which makes changing jobs somewhat risky. Possible, but not a decision made lightly.
You are correct that you only need to do it once... as long as your job duties stay within 50% of what your original job description was. If it was somewhat specialized, and the immigrant changes jobs, then they incur some amount of risk of an I-485 denial later.