I honestly don't care much about the tag system, but I'm trying to help out a little bit anyway because other people seem to care, and I don't think we can make much progress if we only have a few people working on retagging.
Unfortunately, it's quite common for people to add or remove tags without understanding what the tag refers to. People think all auxiliaries are 'modal verbs' and tag accordingly. Likewise, most of our recent tag wikis are misleading or wrong, but users are approving them anyway. And people object to technical terms they don't know (like postpositive adjectives), and instead of learning the basics they decide we don't need to classify those things with tags, so we tend to lose the few useful tags we have.
So no, I don't really have much hope for the tagging system. It can be improved, but I doubt it'll ever be good. Even if we did the best we could, it's really (like the rest of the site) designed for Stack Overflow, not for a natural language site. No one ever tried to come up with a system appropriate for ELL – they just reused the SO code and hoped for the best. And the result is never going to be perfect no matter what we do.
So I think the best we can hope for is to add fairly specific tags when possible to help people find questions on the same topic. Since there's resistance to that idea and since people tend to remove specific tags, I don't know what else to do besides edit a question here or there when the tags clearly don't apply to the question.