There is just way more money in being a specialist. I don’t really understand why specialists like radiologists or anesthesiologists make >500k by default While primary doctors make much less. In Germany the medical associations set reimbursements rates per specialty. I assume it’s similar in the US. Simple solution: balance reimbursements towards primary care. But I assume there is a powerful lobby with deep pockets…
Radiology and anesthesiology are also two "cash cows" of procedures. All of internal medicine wants radiology for tests and needs anesthesiologists if surgical remedies are required.
Primary care pays less because it requires less additional training than the specialties. Although some specialties aren't higher - Children's Oncology for instance.