Uses for 하다
As you say, 하다 appears to be everywhere. There are a few reasons for this.
1. -하다 is the primary mechanism of creating a verb from a noun. So there are countless words in [Noun]+하다 form. These phrase can be in a unit word form (성공하다) or in separated form with a particle between them (성공은 했지만), makeing 하다 appear like a separate word.
2. 하다 can often stand in for other verbs. If the context makes it clear, 하다 might even sound more natural than the original verb. 말하다 is a prime example. We say 그렇다고 해 (Say it is so) much more often than 그렇다고 말해.
Your example 한국은 큰 도시하면 should be written 한국은 큰 도시 하면 as 도시 can't directly combine with 하다.
큰 도시 하면 is like 큰 도시로[를] 말하자면 or 큰 도시에 대해 이야기하자면. 하자 here is used as 말하다 or 이야기하다, so the phrase means "to speak of large cities". -면 is necessary to bring the sense of an if clause, like "if we are to speak of large cities".
Such usages of -하다 is very common. For example, 패션 하면 프랑스(다) ((It's) France if we are to speak of fashion), 고급차 하면 독일(이다) ((It's) Germany when it comes to high end cars), etc.
유행하다 in 스마트폰이 유행을 하니까 means "become fashionable/trendy; be in vogue". This is a case of a [Noun] + 하다 form broken apart. Both 유행하다 and 유행을 하다 are widely used, and there can be other variations too, like 유행은 하지만, 유행도 하지만, 유행까지는 못하지만, etc. depending on what one wants to say.
Also, 유행을 하다 is distinct from 유행을 따르다(follow the trend/fad).
So the second example sentence might be translated like this:
유행을 따라가기가 굉장히 심하기 때문에 한 번 스마트폰이 유행을 하니까 많은 사람들이 (주저 없이 하나씩 사요).
=> As they are so extremely keen on following the trend, once the smartphones become popular, a great number of people (buy one without hesitation).
Point 1 I had already realized, but I'm still not sure why speakers sometimes choose to split the noun from the verb and make it an object in the sentence. I suspect it has a particular nuance I am unaware of.
Thank you so much (and apologies for my delayed thanks) for such a lengthy and detailed reply!
As for why verbs of the N+V form are broken up, it is more because of necessity than any nuance.
Often, we need to modify or embellish the noun part, which requires breaking up the structure.
1. 그는 말했다. Simple case.
2. 그는 어려운 말을 했다. "어려운" modifies 말. (alternative: 어렵게 말했다)
1. 내게 노래해 줘.
2. 하지만 슬픈 노래(는) 하지 마. (alternative: 슬프게 노래하지 마)
#2 examples have an adjective modifying the noun part, so the phrases have to be broken apart. In some cases there is a particle after the noun, but not always. The adverb-based alternative phrases cannot convey the same detail that the adjective-noun constructs do.