First, the generic advice:
- Plan for it. [You do this.] Set aside the first 30-60 minutes for chat.
- Hold your players' interest with an exciting game. [You are doing this.] If they're chatting, frankly, then they'd rather be chatting than playing. Make them more interested in playing than chatting by making your game more interesting. Is there a lot of downtime between "spotlight" time for any given player? Include more in-game activities that engage every player at the same time.
- Create a ritual for starting play. Do something distinctive every game when it's time to start playing: ring a bell, roll some dice, stand up, say "And thus it begins..."
- Ask players questions. Telling players to stop doesn't engage them. Asking them questions gets their attention and demands a response.
You've done some of these things (planning for it, not having a boring game). Have you asked them why they're more interested in chatting than gaming? Are you the only one who really wants to game?
Consider this: Stop GMing for them. Just join their chat. After a while -- maybe an hour or two -- they'll either ask you to run the game (and you can do so with the caveat that as soon as the chat picks up, you'll stop) or you'll realize that they're there to socialize, not to play games. If it's the latter, maybe you should play poker or something else that is more amenable to idle talk.
Smoking: It's not rude to continue to game while your friend smokes. It's rude if your friend expects everyone to stop what they're doing 4-5 times while you're gaming -- even if he MUST smoke every hour. Offer a scheduled five-minute break for everyone at regular intervals. Outside those breaks, continue playing as well as you can without absent players. Hey, people have to use the bathroom and get drinks and stuff, but these don't have to be game-stopping interruptions; neither does a smoke break.
Your players are invested in a different game.
The first group that I played with played the way you describe: mucking around town, not caring much about objectives, messing with every NPC they meet. It took us entire sessions to get through even the most basic of quest-giver scenes, and we delighted in spiking plot hooks and keeping the DM on his toes. I still play with that group, and it's still a lot of fun!
It is likely that your players have a very different view of the gaming experience--maybe socializing or being "off-task" is just a form of relaxation. While you may want to push through the prewritten campaign, maybe they want to just blow off steam and mess around in a fantasy world, doing things they'd never do in real life. Both viewpoints are perfectly valid ways of approaching a TTRPG.
On the other hand, the group I DM for is very plot-oriented---they will eat up quest hooks, and they will efficiently pursue their goals. When I first DMed for them, I was surprised that they completed a quest in the time it took my other group to stroll through town.
Adapt or pass the baton
Trying to force those players into "focusing" on the game will likely just swap your roles: you might be satisfied, but your players might chafe against your "railroading". The first DM of my first group tried to do this, and it caused a lot of friction in the group. Eventually, that DM became a player, and we had a different DM. This DM, instead of trying to run a coherent plot, simply had an omnipotent, insane NPC wizard teleport us around and told us to cause chaos. As you might imagine, this went over a lot better.
Additionally, instead of making deep dungeons or storylines, he focused on making more interesting NPCs and environments instead. This NPC focus meant that he was prepared to create interesting scenarios when we were messing around in town, and he didn't waste time on dungeons we would never enter. For example, in your tavern, you can have a champion or something challenge the PCs to a 1:1 fight, or give the shopkeep a interesting prank magic item (horn of baubles, maybe?). If your players like wandering off or doing individual things, plan more individual encounters or ones that don't require the whole party to be present. I realize you're trying to run a published adventure, but maybe that's not suitable for this group. You will probably get more mileage out of the adventure by using its encounters and NPCs as inspirations for your own modified campaign, rather than running it straight.
Basically, the three questions you ask at the end are basically, "how can I force my players to play how I want?" Instead, you should be asking, "how can I adapt my campaign for these players?" If the answer to that latter question makes you not want to be a DM anymore, then you should pass DMing responsibilities to someone else.
The only way to tell them is to tell them.
I went through exactly the same thing. (As described in my profile.) And getting it off my chest felt wonderful. Here's the email I sent them, if you want to mine it for any bits you can use:
For a lot of people stay-at-home/quarantine has been a great time to get in more gaming, and I've certainly reconnected with old friends in new ways. But gaming online with the people who I used to sit around a table with every week was not working for me, and I know them well enough to know that when this-all's passed, we can resume without hard feelings.