Node select list + dropdown + view of entity references
maybe you should try these modules (at least for a part of your question):

Inline Entity Form can help you with #3 (embed a node form within another node form with option on existing nodes)

Entity Browser could help you with #1/#2 (build your own widget, based on a View, here with a contextual filter on logged in user and relationship to favorites) - really nice tutorial here.

and Flag for favorites.

I hope this could give you some fresh ideas.