In my mind, bon marché is indeed much more of a praise in French as is "cheap" in English. You still get what you pay for, but the emphasis is on the money you save, rather than on the poor quality of what you get. The same stands for économique.
As you mention it yourself, "cheap" can be used to describe sheer quality, whatever the price may be, whereas économique cannot be used in that sense.
That being said, I'd probably use bon marché to translate "a poor man's (something)" (and I'm not sure what consequences it has :)