A man has died in front of restaurant and pub patrons in Sydney's CBD after stumbling there from a nearby service station, where he had been shot.