If you do solid character backgrounding and something like a "session zero" that has been discussed elsewhere, my experience has been players will stay pretty engaged even in a more sandboxed game because they understand the setting and have a feel for where they fit into it. For my sandbox games I usually have a number of options available for players, but if there's a bigger plot lurking in the background I design most of those options so they connect to that plot in some way. Like the OP, I also have the world moving along with the characters, so the situations and people they encounter change as things move along. Quite often I start working up new adventures or options while one is already going, so I can incorporate what the players have done and where they're going into things. Having a well-developed setting helps quite a bit with this, and it sounds like you have a really good one, Druss.
With my non-fantasy stuff, adventures are usually assigned missions...the players know the desired end state (steal the plans, detain a subject, etc.), but they don't know how they're going to get there. In games like that you sometimes do have to work a bit harder to keep them on script for some missions and make some plot information more available than you might otherwise (like if they happen to miss something important or botch a surveillance task that should have been relatively easy), but that's usually just adjusting the plot a bit. Of course, sometimes they do just fail...and you have to allow them to do that. I run one of my espionage games in a home-brew city, and the options you have there are really very broad. The only thing narrow about those settings in my experience is the imagination of some GMs or players.