@JeffBrown, I know what you mean. My current working environment is still one gigantic org-file and one gigantic bibtex file, and when I first constructed it, I had exactly the headlines-as-link-targets questions that you have. My answer was finally <<dedicated targets>>.
With these, you can write a pile of paragraphs, and later, when you go back to them and understand what word or phrase in them was the main idea, you make that word or phrase the dedicated target, and link to that spot from elsewhere. If you rewrite the paragraph, the target can move inside it; if you restructure, and move everything under a different headline, then the dedicated target moves again. Finally, if you do a big rewrite, so that everything under some headline is an elaborated version of your main idea, then you just move the dedicated target to the headline itself. During all of this, all links pointing to the dedicated target continue to work.
In this way, the zettelkasten unit of thought is the dedicated target, not necessarily a headline or a .org file, as it currently is in org-roam.
So, what I’d like to see is dedicated targets becoming another kind of org-roam bidirectional link. It could denote a word, phrase, headline, or .org file, and it could fluidly move between these things. This is somewhat like how Roam Research works.