I don't think what you are describing is a golden hammer. What you are describing is the saying "when all you have is a hammer -- everything looks like a nail." You give a good example with the Singleton. Programmers usually start out by using a lot of global variables. It is the obvious solution, just not a good practice. So when they come to OOP they look for a design that will work just like their previous bad design. Hence the Singleton is misused. That is not the fault of the Singleton. The confusion is between thinking you want one instance of a variable (which is not the Singleton) and when you want only one instance of a class (which is a Singleton). The latter concept implies a solid understanding of classes that people new to OOP don't have. And if they did even a little reading about the Singleton pattern they would learn that it is not something you should use very often. There are warnings on most descriptions. They might even learn what an anti-pattern is!
I just think it doesn't make much sense to say, "People sometimes don't understand the best solutions to common problems, therefore they should keep using bad solutions." Design patterns are simply best practice solutions to design problems. They are misused because software design is difficult, not because patterns are somehow bad or a problem.
I would recommend that Live24x7 read about every pattern she/he can find. I recommend reading the GoF patterns first (search for them, here are a couple inks
http://www.softpatterns.com/ or
http://www.fluffycat.com/PHP-Design-Patterns/). Then would read Fowlers EAA patterns (
http://martinfowler.com/eaaCatalog/). It takes years to understand when and how to apply them -- so you might as well start now. Design is very counter-intuitive so you need to slowly unlearn all the things you figured out on your own.