This is EXACTLY what should happen, GP's spend 7 freaking years learning all kinds of crap they will never, ever use when they leave the hospital and spend 40 years getting silly money to dole out antibiotics.
Why teach someone to do quite a lot of surgery, and a crap load of stuff they don't use.
Theres two options really, GP clinics in hospitals where just about all doctors spend SOME time every week in a GP office and some time every week in the ER so every doctor in the UK pretty much gets a constant varying contact with lots of different diseases and problems, diagnostically they will stay sharp and not miss anywhere near as many things and, with a decent system for which doctors are in where, people with a skin problem can get an appointment on a day a dermo will be in the clinic, a guy with a potential heart problem can see someone more specialised in heart problems, etc, etc, etc.
GP's are as now, utterly wasting the vast majority of what they learn, being overpaid for doing very little and seeing relatively few rare cases, which makes it harder to spot other more complex cases.
So one option is vastly better GP's and paying doctors to be doctors, not basic diagnosticians. The other option is what you said, train people for far less time to be great diagnosticians, not surgeons and everything else for years, and chemistry that they don't need, etc, and then we don't have to pay GP's highly trained doctors wages, for a duty they simply don't perform.