Hmm. I know what you're talking about: when all you really want is to hit $3/$5 for Fishing Village/Wharf and you keep running into $2/$6 and you don't know if you should be buying Courtyard/Gold or continuing with your engine.
The answer, I think, is to play along with your draws. Usually, I tend to shape my strategy around what I end up buying, so that I make the most of what I have. In other words, I identify cards that I want to prioritize, and then as the game goes on see how I can use what I've been buying to form a coherent deck. If I get too much money, maybe I'll modify my deck into a Smithy-Big-Money type deal.
The problem, of course, is that sometimes the engine cards are more important than what you're doing, and you need to be underbuying and accepting the fact that you will have suboptimal engine buildup. This is the cause of many of my losses. Sometimes it's pretty obvious: you hit $6 on Turn 3, you need to buy Mountebank instead of Gold. But it's usually more subtle, like, oh, all of a sudden, my opponent's Fishing Village/Wharf combo has caught up and decimated me and my Golds. (It's like the Beyond Silver article, except applied to Golds...)
My solution -- that I've been trying out for now -- is to stick to my guns (refuse to underbuy and just adapt my deck instead), but with a few exceptions for auto-win engines, engines that have no real competition because they are so good. Torturer engines, Wharf engines, stuff like that, I will underbuy in order to make sure I can get into that engine.
Does that make sense?