I was experimenting with a timer-based event system for a while, where each move on the map (and other actions) would use up a "turn" and after X amount of turns the chapter would end. The whole thing would last multiple chapters, have some mandatory story events that triggered themselves based on turns passed, but otherwise would have many optional NPCs/quests/story bits come and go on the map based on what chapter it was, the range of turns remaining, and some other factors.
On top of that, each NPC/Quest/etc had some minor CYS options and could impact the availability of certain things or people on the map. For example: there was a northern and southern caravan where you could trade at. The Northern one was available for around half the chapter, the southern for the other half of the chapter. Both of them are economic and military rivals, that have a bad history but are at "peace" for now. There's an option to kill one of the caravan leaders. Doing so will permanently remove that caravan for the rest of the story, but in turn will give you more favorable trades with the other caravan because they're glad to see it happen because they couldn't do it directly. All of this also fed into a morality system, so there would be other less direct results of your choice to do that too.
The hardest part is probably wrapping one's head around a bunch of systems at once, in a way that also allows it to keep being a proper CYOA. Part of the design process is weighing the pros and cons of how much time a feature will take to set up vs. how much you really even need it. Additionally it's tricky to stay creative and inspired on something mechanics-heavy combined with story, since you're having to give 200% if you want both the story and the gamey part to be solid.
In terms of tips, usually it's best to start with the core of the plot. It sounds like you have the protagonist, the end goal, and some things to encounter along the way with the main story. These are all important starting points to set up your framework.
The next step I would recommend is how these major pieces can fit together in different ways. There might be one pathway that you can consider the "true" pathway when you wrote everything up. From there, take a step back, look at all those big pieces again and see how they could connect in other ways. It's almost like chess or shogi in a sense. You move the pieces around, and you sacrifice some to gain progress in other ways. These ways can lead to different endings.
What if they fail to finish their goal in the timeframe (90 days it sounds like)? What if they complete ABD plots points one playthrough, or BCDG the next, still failing both times? Will it make a difference? Can they still have a satisfying ending, maybe through subplots and/or main events, even if they don't accomplish the main goal? What combination of events can lead to these goals? Will there be multiple ways to accomplish the goal, that can make a similar final result feel different?
There's a lot of different ways to approach what-ifs in more open adventures, and part of it is judging what you can feasibly pull off as a single writer. As a reader, I usually find it most satisfying when I see the result of an early decision come to fruition somewhere else and/or much later on. Maybe you freed a slave in the first chapter, and in the fifth chapter they come do you a favor, that leads into something that otherwise couldn't happen without their help. Or maybe they try to kill you in your sleep, because they found the stability and safety of slavery to be more appealing than fending for themself during those chapters you didn't see them.
As a random example: maybe there could be a plot option that allows you to free the Sun Pack from the Dwarves' control, such as stealing whatever that embodiment is. And/or you could also keep it for yourself and control them, or help them, or sell them off to the highest bidder? (assuming it'll fit in a travel bag). Taking the Sun Pack out of the Dwarves' control would probably make them angry and less likely to do anything to aid you. Unless you did some kind of underhanded deal to force them to go along with it. If you freed them, they might be able to help you out with either subplots and/or some element of the main story. All of that is just a rough example without much context, but there's a lot of different ways you can get elements to interact with each other.
While I think it's good to make sure plenty of choices can have indirect consequences on other things, it's good to have some standalone subplots too to help with world building. It could be finding a hurt stranger in the wilderness or finding the source of some evil plague in a city. Not everything should be as cut and dry as good or evil. It's usually most interesting if there's some morally gray decisions too.
When it comes to those "key points" you mentioned the reader will interact with in your story, you may want to write a few different versions of those interactions that are impacted by outside factors. If they go exactly the same no matter what happens, then it makes everything feel more linear. You don't want all of the subplots to feel meaningless, since those help fill in the world. Even if you only have one ultimate goal for the reader, you can make it feel non-linear by allowing a lot of different ways to achieve it.
There isn't always an easy way to get all of this to connect together. It's strange to wrap your head around it and if you're using a map system, you'll need to use a lot of variables to make sure content is locked and unlocked as needed. Unlike a traditional CYOA, backtracking really changes the dynamics and you basically have to write the CYOA forwards and backwards (in a sense), rather than it being a straightforward pathway. In one playthrough a reader might do one major event first, then another second. A different reader may do the opposite. Both of the readers will want satisfaction from those decisions, no matter the order, impacting the world around them even in a small way. The caravan example I mentioned is one of the more straightforward interaction types, which has direct consequences of making a character die and disappear from the map. In return, you get a more favorable experience with a different character.
When I was doing a proof of concept of what I described at the start of this post, I found the easiest way to handle some of those was starting small and have some "chained" events on the map. Like the caravan one. By that, it means having two or three subplots chained together, so interacting with one or all of them would potentially impact the others in some way or another. But they wouldn't directly connect to anything else, to avoid complicating things to the point of it being unreasonable. Sometimes you'll be writing and come up with an idea somewhere else, that you can still connect to one of these chains. You can also chain subplots to a main plot point. So after the reader interacts with one of those, it can then trigger an unlock of something else, or lock out something that was previously available.
From there, sometimes you can bind the availability of different groups of subplots chained together to bigger events or other choices, like a web of sorts. The important thing is handling it in smaller manageable chunks. Plan out your main plot points, then plot out the subplots. Then from there, you can shuffle things around and see how it'll fit together. I found this approach makes it more manageable for solo writing on an open world map, rather than trying to plan out the entire thing at the same time.
As a final note, the reason I added a morality system to the concept I was working on was to add an underlying binding to everything the reader did, including seemingly small and uneventful bits. Even if the subplots were standalone groups of chained interactions, being good, evil, or taking no action would still have long-term results and add a little more weight to those decisions. You probably don't need a morality system, but having an underlying variable can help bring everything together, sometimes in surprising and interesting ways.