This is my preferred option. Requires no underlying change to ActivityPub or federation, just makes the end user experience more pleasant until/unless communities gain more distinct personalities that would result in fewer reposts.
Better yet, it should semi-force you to post as a crosspost which would remove the duplicate from end user feeds. Especially if there's already a post on another community with a matching content link.