Initial codes in infection area: sometimes you get three 3s and you have very small chance to win. Sometimes you get three 1s and you win in 2-3 turns with luck. So difficulty is significantly changing randomly.
If you have a situation with more than 2 code #s, mercs can be your best friend. I have won games like you describe easily with the right mercenaries. You would just need one 3 and the right merc to capitalize on that. Otherwise, smart choice of infection phase effects helps. Try to keep code count low on one or two stacks if you can, so that a local doctor can help you clear a stack entirely.
It can easily happen that you never get the card you need (like Shelter Map) in solo or even in two players game.
(Solution: draw 4? card in solo and 3? card in 2 players?)
I have encountered this problem, but it goes away with experience- If you shuffle the tunnel cards each round as intended, you could never encounter the shelter map. So- don't count on it. Save that biologist for late game, when you have several codes and can clear your last one or two stacks at once. Treat it as if it's a one shot deal for awhile, and it will make you a much better player. Alternatively, you could just draw tunnel cards, only reshuffling when you have gone through them all. This pretty much guarantees you will see each card at least once.
Discussed here in forum and fixed in Rules 1.2 already. Didn't try so far so I don't know how this improves gameplay.
Still it seams to me lot of cards to explore when you are unlucky with initial infection area setup.
Do try the latest rules in relation to this. It solves this problem in my opinion.
Food / Quest Tokens
Nice element but they barely get into play. This issue may be linked to those mentioned above.
The food tokens can be integral to how you win, especially if you are playing the ratcatcher. But they're useful for any character. You won't have resources to survive the tunnels and pay for that (3) local doctor to eliminate deadly 3s from your code stack in many cases without a economic boost. Don't always use it, but look for opportunities where you know it will pay off. (for instance if you pull a random settlement and get the rat farm, and need to go to the local doctor which you know is Serdika Station, it would be wise to get rid of your low cost human items and get rat meat, then trade at Serdika for 9 resources apiece. Tunnel cards that let you reveal settlements can also aid you in setting up combos like this. Don't get too greedy with your trading. Even selling your food tokens at the next opportunity can be a good move.