Personally I am a fan of that idea:
ally must have free reaction with which he can catch the potion and drink it
combined with a dexterity check of the catching ally. If the ally is prone or dead only a natural 20 will work. As a DM I would explain a natural 20 like: "And the potion opens itself while flying and the fluid drops exactly in the opened mouth of the incapacitated ally."
It definetely makes more sense than throwing a potion against the head of my dead companion to revive him.
If the ally is dead you would need a revivify scroll. I don't think we should imbue healing potions with the ability to raise the dead even on a natural 20.
Honestly a dead ally is easier to deal with than a downed one since you can revive them somewhere safe. Which technically isn't a 5e thing either. They should revive in place and it should only be usable in that combat they died in and not later.
I mean its so odd that people are up in arms about potion tossing but Revivify = True Resurrection - "Oh yeah, that's fine"