Try Plaza Pontejos off of Puerta del Sol. There are several fabric/notion shops which are fun to browse. There's also El Gato Negro on c/Sal (I think) right off the Plaza Mayor (walking toward Sol). They have yarn as well.