One thing I like about bind mounts is that there is always a backup directory in the location, so if the USB isn’t plugged in, accidentally saved files don’t just fall into the void. But I don’t remember if that was the reason.
So, if you have a symlink, what will happen is that trying to save to a path that passes through the symlink will fail, because the program trying to save will fail to access the original path (assuming your above directory structure; /mount/external will exist, but /mount/external/realfolder will not, as realfolder is on your USB drive and won't exist when the media isn't mounted). With most programs, they'll warn you that they couldn't write the file (and in fact, that the directory isn't there). From their standpoint, the path is invalid. You won't typically just save a file and have it vanish.
I guess you could theoretically have something like a script that writes a file data and fails silently if the path doesn't exist. I do think that it might get confusing, to have some files written to the bind mount point in the user directory
I mean, the OS isn't going to merge them when you do the bind mount or anything. You're going to have one directory structure on your removable media that contains some files, and when it's inserted and the bind mount is in place, that's what you'll see, and a second directory structure inside the bind mount that will have different data. Like, if whatever is writing this is something that you control, I think I might set it up to explicitly write somewhere else. Or just create a /mount/external/realfolder directory on the /mount filesystem and give the user write permission to /mount/external/realfolder which will have the same effect, with some data going to a the removable media and some to the directory structure where the mountpoint lives if the media isn't present (just that the files will be written to wherever /mount lives, which may not be the same filesystem as /home/user/; I don't know if that matters for your use case).
But if you do feel that you want to set up a bind mount, then yeah, I'd look at the other comment I have in response to your comment here, the one talking about systemd-udev.