this seems very convoluted, also you’re going to see those articles in special feeds and mark them as read accidentally by scrolling past them if you actually use tt-rss yourself.
i would suggest you skip all this bullshit and just let them to subscribe to the feed. alternatively, process the feed by an external script, count new articles and send mails accordingly, without relying on modifying tt-rss database.
that said you can easily set shared article unread, it’s going to look like this:
update ttrss_user_entries set unread = true where ref_id in
(select id from ttrss_entries where link = '<your shared link>') and feed_id is null and owner_uid = <your user id>
feed_is is null means article was shared externally
if you have multiple articles with exactly same link for specific user just take the latest one by the timestamp