Hi Lance. I try to have plenty of side quests which can complete in many ways. But usually they come around at the same time. Examples follow.
An NPC says get me that sword from this crypt.
On our way to the crypt, which got unlocked when the quest got accepter, we meet another NPC.
This one was guarding the crypt so that NPC1 would not get his hands on the sword since he actually manipulated the PCs in getting it. He is evil, as is the sword.
Then the PC can continue on his initial quest, killing the guard to get through, agree that the NPC1 should not get the sword and go back to confront him, or say screw you both I'm going in and keeping everything I find.
The situation above, I thought off just now. But is an example of how I approach things. Many outcomes, but you'll meet the options on your way.
Also, as Tchos said on his first example. This allows for a surprise if a player plays the mod more than one times. He wants to do the same quest, but gets a different approach because he did something different earlier.
The journal entries, is true that they are our friends. They act as a variable after all, why should we set more?
Another method I like, but this is because my campaign has an open world feeling to it, is to introduce the facts at any point and let the player figure it out. I like to think that the players are smart enough to do this, or at least think it without too much help.
Example: You find an NPC sitting in a tavern, who is called Jon the Card Player. You talk to him, assuming you might play some cards with him. He says he lost his deck... so it's impossible. On a different area quite far away, you find a deck which by the description you should assume it's his, but also with cheat cards. Bring it back and play and confront him, or not. Is up to you. He will offer alternatives etc, but the point is this. There's no knowing which one the player will find first. The NPC, or the deck. I choose to leave it on luck, since the variables on the convo will check anyway if the convo happened already, or if it's the first time and so on.
All in all, I am a fan of not making the players moves completely guided. My prologue is linear, but after that you can go anywhere you want, in any order you feel like, which brings me to the dungeon.
If I had a dungeon, as you, which would require a specific item to be completed (Say a sword which should be shoved in a wall in order to open a further way, or a riddle door which would open only for people with very high lore... I don't know, anything like that), I would offer the dungeon no matter what. If the sword is not yet acquired, then the player has to think that "maybe I come here later...". Then when they find the sword, give it a description which makes it clear that this is the one for that dungeon. Then the player thinks "Oh, now we can go back there". If they find the sword first, and it's too early (balance wise) to go to the dungeon, let them die and come back once stronger. If they go too late, let them have an easy time.
I finished BG2 again recently, and had a very tough time in the sewers because I went too early. But made the Ummar Hills quest quite late, therefore I had no trouble.
tl;dr I like to leave some stuff to luck, and not try to control every move of the player. Let them die once or twice because they chose something too difficult. And let them think the logic on their own. Next time they play, they'll know better where to go.
Edit: something about your tile problem. I would leave it as it is. The player will go there once or twice, and it won't make so much difference I think that the companion goes too close. Not so much at least that it's worth delaying your project over it.