So first of all, I really like this idea. I tried it once or twice a long time ago and I'm still fantasizing about it. With that out of the way, let's move to my 2 cents.
Make the NPCs well-rounded characters
These NPCs aren't just some recurring characters, not to mention some one-time ones. They're gonna be with the party for a very long time. Whole adventures, actually, which is quite a lot. This means that they should be really well rounded. Your players should get to the point of distinguishing between them after just a few words, especially when the NPCs are the ones who spark the conversation.
More than that, though, they should be more than cardstock characters. You want them to express feelings, you want them to have goals, and you want them to react. Otherwise, your players will have hard time connecting with them, and this is far less good. As a rule of thumb, make them round and distinguishable from each other. A wizard is different from a fighter, true, but we want a greater difference. The prince will have hard time adjusting to the wilderness and to the bugs in his bed. The merchant will always stop to collect the better loot so she'll be able to earn much from those bargains. Classes are a dirty way to distinguish, but they're better when accompanied by some other traits.
Don't let them speak right one after the other
The players aren't coming for the game as an audience for a theater, they're here to play, and hearing NPCs talk with each other is far less fun. If you must make them speak between themselves, make it as quickly as you can and immediately move on. If you can narrate the conversation instead ("they're talking about what happened, Elsa thinks that they should go east and Hans thinks that they should go west…"), it is far far better.
Give the players the center stage
The players and their characters are the real stars of the campaign. The NPCs are extras, and should always be seen like for you that when you're playing them. If they're far cooler than the PCs, or if they have much more screen time, something is off with your campaign. It's better to not have the NPCs with the group than to let them illuminate and shadow the PCs.
They're not all knowing
Think for yourself what is more important, a character who knows everything or a character who knows only part of them. For me, it is the latter. That comes from one simple thing: There's no drama when everyone knows everything (it is not entirely true, but that's for another time). Make them say sometimes stupid or idiotic things, make them come to wrong conclusions, let them make mistakes. They're not a kind of supernatural deity who knows everything, but humanoids who are as humane as the characters, and they should be played this way.
Make them important for the story
They should always be important to the overall story, in one way or another. In one of my more successful D&D campaigns, the characters had to escort a princess to a neighboring kingdom through the forests. Having to keep her safe from one hand, and dealing with all of her complaints from the other one made the game so much richer. They don't have to be important to each and every one of the scenes, but they should always be important for the overall story. Otherwise, the characters may just leave them to rot one day, when things will turn the wrong way.
And an end
Hope I succeeded with helping you a little bit.
There are good things and bad things about having the players take up control of the narrative like this. I will challenge the frame slightly to suggest that "taking back control," might be less appropriate than "maintaining control of what you feel strongly about."
For instance, you might want to GM a relatively low fantasy saga (say) but the descriptions from your players veer more and more toward the high fantasy, or the four-color comic books, or some other genre. In such a case, what is important is not controlling every detail of the descriptions or the NPC actions, but enforcing the overall genre conventions.
Or you might not care too much about genre (or just might not be having that problem) but might be in a situation where you need to detail NPC actions-- even in death-- to provide some key details of the setting. If they describe a beheading and a fountain of blood for something that is actually a construct or a bloodless undead, well, that's a problem!
But the solution is not necessarily to shut the players down entirely and take back all control. An equally good method is to sit them down and make it clear that you have veto power over their descriptions, that sometimes you'll explain yourself and sometimes you won't. In the case of genre enforcement, explanations are probably warranted. Other cases are play-it-by-ear.
(And neither the initial talk nor the veto instances need to be aggressive or confrontational unless the players make it so.)
The short version of this advice is: Figure out what you really care about, and protect that. For the rest, be grateful you have engaged players.
Best Answer
Preserve Player Agency in Role Playing Games
While "DM decides" is a standard tool to keep play moving, removing player agency for what players decide to do can turn role playing into roll playing (letting the dice drive everything) and lead to low player satisfaction. The best way to deal with this is to role play the situation.
Ability checks are not saving throws.
You are right: most players will feel cheated if they are forced to do something they didn't choose to do (player agency) that isn't the result of a failed saving throw. Ability checks are similar to, but not the same as, saving throws. (DMG p. 237 and p. 238).
Saving throw fails can lead to players doing things against their will, but they are being influenced by some sort of power ... something like magic.
Examples:
The Fear save (failed) due to a Dragon's power to instill fear causes the character to flee rather than fight.
Failing to save versus the Umber Hulk's Confuse power can lead to characters running off, standing around, or even attacking someone in their party.
Note that it is the player initiating something: player agency in action (which may fail anyway).
Compare that to a Contest (p. 238)
If two NPC's are in a contest, the players can watch it play out as part of a scenario. Rolling for the result is an option you have ... or you can play out the scenario based on how you want to set up the follow on challenge for your players.
PC to NPC contest? As your question suggests, is it because the player initiated action, or a course of action, or is it a result of a DM initiated course of action? If the latter you are already driving the narrative: why roll? If rolling dice helps you get a feel for how strongly the NPC reacts, then the dice help you role play. If it is to create a saving throw for a social interaction that forces a character to act in a certain way, you may be headed to the railroad station.
What happens when a thug tries to intimidate a PC?
The DM's role playing skills come to the fore. If you set the conditions where the PC feels that she needs to choose a course of action, or feels threatened because of what the thug can do, or who his friends are, then role play the thug and the setting, then let the player choose. Otherwise, you can end up in a situation like this:
DM: "You feel intimidated."
Player: "I go ahead and do it anyway, he doesn't scare me."
DM: "You can't, you are intimidated, he won the intimidation roll."
Do you want to be the engineer on that railroad?
Let's say the persuasion check fails.
Social interactions between the PC and the NPC need to be in the hands of the player as much as possible. The NPCs are your tools for creating the environment and the challenge.
On pages 244-246 of the DMG, "Roleplaying Interactions" walks you through starting attitudes of NPC's, Conversation/Interaction, Charisma checks, and role playing. The details includes reactions and DC's based on the creature's initial status: Friendly, Indifferent, and Hostile. It also provides advice on how to use your body language and voice in enrich the encounter.
In Summary
The DM role plays these interactions, rather than relying on dice since this isn't a saving throw scenario. You can let the dice help you shape the role play of the NPC.
Why?
Coda
I had a DM years ago whose theory on dealing with players was "give them enough rope, they'll hang themselves." He was mostly right. We got ourselves into all kinds of scrapes on our own volition by making decisions regardless of the signals he was sending us. Player agency to the limit, and immense fun.