Is it a good idea to add an empty file, say a file called NOT_MOUNTED, into mountpoint directory when the backup storage device is not mounted? Or will this be confusing?
No. Leave that directory empty. Otherwise this will be confusing; in fact, multiple tools will refuse to mount something "atop" of a non-empty directory.
Empty directories are empty directories. There's no prior property that makes them mountpoints – not every empty directory is just waiting to become a mountpoint; so this is not a sensible direction to think!
The other direction doesn't work either: a device containing a file system doesn't have a property that says "I need to be mounted under /path/to/mountpoint".
Is a symlink better, that becomes broken when the device is unmounted?
No. If the directory remains there, and the symlink points to that directory, then it will not be broken. If the symlink points to something inside your mounted file system: why not simply check for the presence of that from the start?
Is there something else I can do to make it clearer for myself, and for other users, to know the status of a mounted device?
Check your mounts! Linux has an API to check the mounts visible to every process – you can access that through /proc/self/mountinfo. If your directory is not in there, it's not a mountpoint.
In fact, there's the very handy tool for checking whether a directory is in there: mountpoint. Use it like
mountpoint -q /path/to/directory && do_what_you_do_if_mountpoint
Now, if you have a mount system unit (a systemd mount unit), then you can simply check whether that unit is successfully running. In fact, that's a usual way to deal with mounting things for automated backups, anyways: make the backup service depend on that mountpoint. In that case, it can't be started before the mount has been finished.
immutable-mountpoint:-)