I think this is a good question, because, assuming Twine 2 and Harlowe 1.2.4, it's not obvious how you'd do it. JessRun is right that using (replace:) or similar macros would make the new text appear within the old phrase, if the link was only to "love". For example:
I love cats
(click-replace: "love")[But I love dogs better]
would result in "I But I love dogs better cats"
You'd need to adjust the text you were including in the link to make the outcome understandable. Such as:
I love cats
(click-replace: "I love cats")[I love cats, but I love dogs better.]
This would give "I love cats, but I love dogs better" which is the desired output, but in terms of aesthetics/the appearance of the link, it means the whole phrase "I love cats" has to be part of the click-replace link, rather than the word "love" only.
Entirely possible I'm missing something--maybe you can make "love" into a link that results in more text appearing somewhere else in the passage--but I think it's a valid question. I've read the documentation and I don't know how to do it.