I checked a couple of sources that were accessible (pun intended): Reaney and Wilson, A Dictionary of English Surnames, and Hans Bahlow, trans. by Edda Gentry, Dictionary of German Names. Neither of them make any suggestion about why surnames were created and adopted at all, much less why one rather than other.
I think that it's really telling that name experts, trying to create major reference works, didn't try to answer questions like yours.
Reaney has a fun bit on introduction p. xliii on his own experience with nicknames:
In my schooldays, Feet was the nickname of a tall, lanky individual, with heavy boots on large feet which caused havoc in the unorthodox football played during breaks. The chemistry master rejoiced in the name of Bublum Squeaks, a corruption of "Bubble and Squeak". He was excitable, no disciplinarian, with a voice which rose higher and higher to a shrill squeak as he vainly tried to make himself heard above the uproar in the laboratory. But why a colleague of his was known as Joe Plug no one ever knew. His christian [meaning first] name was Arthur and his surname Watson. Even when the origin of a nickname is known, it is difficult to see why it should stick. A schoolboy, called on to translate a Latin Unseen about Polyphemus, was thenceforth Polly to his friends. Why should one schoolmaster be called Wally and another Mike, names impossible to associate with either christian name or surname? Kip had an interesting history. Originally Skipper--why, nobody knew--it quickly became Kipper, later shortened to Kip. It is not surprising, therefore, if we frequently fail to get behind the mentality of the thirteenth and fourteenth centuries and cannot interpret their nicknames.
I can at least address one thing: there are more surname types than just professional or patronymic. Reaney and Wilson lists four groups:
(1) Local Surnames, meaning location. Abraham Lincoln: Lincoln is a city and shire. Berwick, Cambridge, Norfolk, ... Margaret Atwood: presumably from "atte wode", at some notable forest. Attlee, Byfield, Underdown, Fields, ...
(2) Surnames of Relationship. Your Johnson, Wilson, et cetera. Or "filius fabri", son of the smith, now Smithson, or "filius clerici", son of the clerk", ... Patronymics (father's name) is far more common, but there are less common metronymics (mother's name). He does note that -son shows up starting in the 14th century, but possibly because they were just translations of the earlier Latin "filius", son [of]. And they were more common in the north for some reason.
(3) Surnames of Occupation or Office. Your Smith, Shepard, Cooper, Fletcher, et cetera. Le prest [priest], ...
(4) Nicknames. Usually descriptive. Head, Neck, Mouth, ... Broadhead, Redhead, Cruickshanks, Goosey, Vidler [wolf-face], ... Good, Moody [bold], Daft, Sturdy, Proud, Gutsell [good soul], Careless, Pennyfather [miser], ... Bull, Colt, Raven, Nightingale, ... Greenhead [green hood], Hussey [booted], ... Besant [banker, from bezant], Blampin [white bread, a baker], Collop [ham and eggs, a cook-house keeper], ... Debney [God bless you], Godbehere, Goodyear, Drinkale, ... Shakesby [draw sword], Bendbow [archer], Hoffsflesh, Treadwater [sailor], ... Scattergood [spendthrift], Sherwin [speed], Makepeace, ...
(BTW, a word of caution on those meanings. Reaney and Wilson don't usually provide sources for why they think the name means what they say (the bit in brackets above). I think they're making what they think are reasonable inferences, perhaps based on earlier spellings where the etymology may be clearer. Cavendish was a place name in Sussex, for example, so it's reasonable to assume that a surname of Cavendish refers to the place. But, for example, I'd love to know why they were willing to write that Greenhead referred to a hood, rather than an accident that led to green hair, or a metaphorical use of "green".)
That's a long-winded way of saying "sorry, no idea", for your original question, of why an occupational name versus a name of relationship. The most I can do is point out that the experts didn't even try to answer that question. And I can explain other patterns in English (and actually these patterns are seen in some other European languages).