These kinds of names are strongly associated with Germans and Ashkenazi Jews, and these kinds of names dot the German historical landscape: the Goldberg Variations, the Gutenberg Bible, the physics contributions of Albert Einstein and Werner Heisenberg, Nazi genocidaire Alfred Rosenberg and repentant Nazi officer Kurt Gerstein. The topographic names "Stein", "Steiner", "Berger", and "Bergmann" are among the top 100 in Germany. In Sweden, a whopping 29 out of top 100 surnames end in -berg..
"Stone" is an English surname, but a particularly uncommon one, and often the Anglicized version of Stein. So what causes this great break between the Germanic names of continental Europe versus the British Isles?
In "Anglo" names, I think there are actually a lot of hidden meanings in topographical surnames that might not be transparent to a modern English speaker. This is because a lot of the place names in the British Isles (especially in England), retain their Anglo-Saxon or Viking names, while the English language has incorporated a lot of Latin/Old French words that have replaced them. Examples include names that end in "-by" that come from the Norse word for "town" (for example, Grimsby in Lincolnshire) or "-thorpe" (which derives from the Norse word for "village", for example Scunthorpe, also in Lincolnshire). The Anglo-Saxon equivalent of "-by" was "-ton" (shown in places like Luton in Hertfordshire), while the suffix "ing" meant "people of". For example, the town "Hastings" in East Sussex derives from the fact a man named "Haesta" set up the town. People who came from these towns often took these names as surnames, and their descendants bear them even if they are not from those places.
A similar thing obviously happened in Germany, where ethnic Germans or Ashkenazi Jews took place names as surnames. For example, the surname "Waldorf" is built of the preffix "Wald-" (meaning forest) and the suffix "-dorf" meaning village. Both words are comprehensible to a German speaker today. In contrast, the modern English word "village" is from the Latin "villa" (meaning country house) via Old French, brought into the English language by the Normans. Therefore, a modern English speaker would not recognise "thorpe" or "by" to mean town or village, and may just be able to make a connection between town and "ton". In contrast, Scandinavians would recognise these suffixes, as a Swedish speaker would use "by" to mean village, and a Danish or Norwegian speaker would use "by" to mean town.
As for why "Berg" and "Stein" are more common topographical surnames in Germany and Scandinavia than in the British Isles may be due to the topography of these countries. I am no expert, but on the whole, I think England (where a lot of these surnames originate) is a lot flatter and less wooded than Scandinavia or Germany. In the areas of the UK where there are more hills and woods, particularly Wales and Scotland, there seems to be a preference for making surnames out of clan names and family connections. In Scotland, this was due to the long-entrenched clan system which didn't end until the 18th century (see the many Scottish surnames beginning with "Mc" or "Mac"). According to UCL, the top 11 surnames in Wales are all derived from mens first names - Jones (John), Williams, Davies (David), Evans (Ifan), Thomas, Roberts, Lewis, Griffiths (Gruffydd), and Edwards. You have to wait until number 12 to get to "Smith" (an occupational surname) and then 13 to 18 are all again linked to mens names. This is probably due to the fact that in Welsh speaking areas, using patronymics was more common than surnames even into the modern period. For example, if you were a Welsh man named Evan and your father was called Rhys, you would be "Evan ap Rhys". Slowly overtime, this could merge into a surname. For example, the surname "Price" is thought to derive from a shortening of "ap Rhys". A famous example would be the Tudor royal family which gave us Henry VIII and Elizabeth I - the first Tudor to take the surname was Henry VIII's great-grandfather Owen Tudor (d. 1461), whose father was called "Maredudd" (pronounced Meredith), and whose grandfather was "Tudur". Therefore, on moving in English circles, Owen ap Maredudd ap Tudur became "Owen Tudor".
tl;dr There are topographical suffixes in Anglo surnames, but they tend to be hidden because of the way English has changed. Germany and Scandinavia is more hilly and forested than the British Isles, hence the frequency of "wald" and "berg". Hilly/woody places in the UK favoured patronymics or clans name to topographical surnames.
They are toponymic names (ger. Herkunftsnamen), usually hailing back to the names of medieval German nobility that were following the pattern of [first name - from - name of the holdings], not unlike English medieval names like William of Ockham (a reductionist principle named after him is a good example of the process, as logically, it should have been called 'William's Razor', as 'Ockham' is the name of place he came from, not his actual surname). In high middle ages (around 12th-13th century) such names were also adopted by the burghers who slowly rose to prominence with the development of urban patricians and burgeoning merchant class.
The particle '-berg' is very popular, as it literally means 'mountain' but may also come from the bastardised 'burg' ('fort', later 'city', cf. 'tun'/'town'). It has indeed been popular since at least High Middle Ages, as among 31 Land Masters of Prussia in Teutonic Order who held the position between 1230 and 1324, names of 11 end with '-berg' or '-burg' (these are names of their holdings rather than surnames, mind) giving a good insight into the prevalence of such place names. Other popular toponymical particles of the German names also refer to the landmarks and natural phenomena such as '-stein' (stone), '-furt' (ford), '-bach' (stream), '-heim' (home) or '-t(h)al' (vale). not unlike their English counterparts.
Every language and culture has its own rules of onomastics and toponymy, so the prevalence of particular names may differ, especially given that unlike Germany, British Isles were inhabited people speaking languages that belong to at least three different families (Celtic, Germanic and Romance) and thus they show greater versatility with prevalence of Latin and Celtic words being the most distinct difference. The numerous migration could lead to very complex changes in onomastics, with York being a nice example. Its earliest name was Brythonic 'Eburos' that was slightly changed into 'Eburacum' by Romans in 1st century BC, what was against changed possibly via popular etymology into 'Eoforwic' (lit. boar place) by Anglo-Saxons somewhere in 5th century AD and then into similary sounding by having a different meaning 'Hjorvik' (Hjor's haven) by Danes and sometime around 11th century was morphed to 'Jork' and finally took graphical form or modern 'York'.
The explanation above is quite relevant to the original question, because, while it is not too intuitive due to language diversity in the history of Britain, the toponymous personal names derived from the word 'mountain' are not that rare in English, but simply are derived from the language different than the one used nowadays. For example, there are many names containing the part '-ton' that is derived from Old English 'tun' meaning 'hill' or 'mountain' (Gladstone, Clifton, Norton, Middleton, Clinton, Ashton, Dayton, Leighton, Barton, Ea(s)ton, Brixton, Pinkerton, Harrington, Hampton and many more). The particle '-ton' may also be a hybridisation of 'stone', thus making the name 'Silverton' a direct counterpart to German 'Silberberg' or 'Silberstein'.
Now, the Jewish (not necessarily Yiddish) names have a slightly different history. In late 18th/early 19th century Jews inhabiting Prussia, Austria, Russia and the Polish territory claimed by those two countries during partitions between 1772 and 1795 were forced by the absolutist administration to adopt regular hereditary surnames. The latter territories are quite important, as Poland had the highest number of Jews both as percentage and total number of all countries and because many of the Polish Jews were fresh immigrants who moved there due to persecutions and as representatives of different cultural subset, they have not integrated as well as the Jews living in Poland for centuries and thus were less prone to adopt local surnames or proto-surnames in the form of nicknames, popular among commoners, including Polish Jews and thus retaining their traditional, patronymical naming conventions. Aforementioned laws, issued in 1785 and 1787 in Austria, in 1796 in Prussia and in 1804 in Russia (also repeated in 1835 and 1844) mandated that all Jews should adopt a regular surname within two years time. Many of the names were being invented according to the general rules of German onomastics rather than selected from the list of existing names, and with toponymical surnames deemed to be the most natural and neutral, vast number of such surnames follow the pattern mentioned in the original question. According to S. Kurzweil, author of the short historical summary of Jewish naming convention in Poland published in Warsaw Jewish community magazine in 1937, local officials were not above accepting bribes for a nicely sounding name, derived from flowers or precious materials, initially proposing less desirable names derived from animals or common objects. On a curious note, the office responsible for creation and assignation of the surnames in Warsaw (then belonging to Prussia) was held in the years 1803-1806 by a writer and jurist E.T.A. Hoffman who is credited with inventing names that despite following common patterns where at this moment either nonexistent or extremely rare (Rosenbaum, Goldblum, Silberstein). Given the sheer number of Jews forced to change names, it is no wonder that the prevalence of the German-sounding names in Central Europe rapidly increased in the early decades of 19th century. Subsequent emigration of ethnic Germans and Central European Jews to America further increased popularity of such names worldwide.