In my explanation below, I took the liberty of swapping 私 and 彼 to eliminate the underlying unnaturalness I saw in your examples.
The most matter-of-fact sentence to describe the act of me receiving a gift from him would be:
The sentence still sounds natural after に is replaced with から, although it might sound a bit colloquial to some.
Depending on the context, however, the second sentence could be understood as someone else’s gift for the speaker being handed by him to her. This interpretation is not completely impossible from the first sentence with に but much less likely because of the stronger collocation of 〜にもらう.
彼にもらったプレゼント and 彼からもらったプレゼント are simply noun phrases that describe the gift thus received and inherit the same nuances.
In the following sentences, に and から are no farther from the verb than they are in the base sentences above.
They all seem to have the same nuances but nothing additional. If some of them sound unnatural, they do regardless of に or から.
To test the first of the two explanations that trouble you, we would have to separate に and から farther from the verb.
Let’s look at the following pair.
I don't find either one less natural or more ambiguous than the other.
However, ambiguity could arise if the object of the verb is modified by an adjective or a clause.
In the first sentence, the ring might be just his size, not hers.
The farther に is from the verb, the more the chances of it inadvertently getting bound with another word. The same can be said about から but に has many more potential partners. I suppose this is what the first explanation is about.
から could sound awkward if another から appears before もらう.
私は彼に故郷から送られてきた野菜をもらう。(ambiguous but less awkward)
Using もらう in the passive or causative form would add to the confusion because に plays a different role in those constructions.
私は彼女に彼にプレゼントをもらわれる／もらわせる。(not really ambiguous but awkward)
I think the same general rule applies to 聞く, 借りる, and 習う. The first might be used more often with から than the other two precisely because of the ambiguity of 彼に聞く; it can also mean “to ask him”.
To me, に sounds much more natural than から when used with compound verbs such as 見せてもらう, 教えてもらう, 貸してもらう, etc.
Here are my translations of the last set of examples above.
She receives a gift from him, to my annoyance.
I have her receive a gift from him.