Can I disable other players from seeing my character's online status without using the appear offline toggle?
Unfortunately you can't hide your character's online status completely. You can appear offline on bnet, which also hides your online status in the community (even your guild!), but if someone has your character on their list or just tries to find you via /who you're doomed. Luckily that only works character specific and only for people on your realm, so not everyone is able to find you.
Anyway, players from your realm will always be able to track you, so if someone is being annoying just put them on ignore.