How can I fill small holes in drywall without painting?
For small holes like you describe, I'd use Light Weight Spackle rather than standard vinyl Spackle. The Light Weight Spackle is very easy to apply, will almost disappear in small pin holes, and you can smooth it off with a damp cloth apx 15 minutes after application. using a damp cloth also removes excess Spackle from surrounding paint so the only patch material is in the hole, not on the surrounding paint.  You can get small sample size containers of paint at HD or Lowes for a couple of bucks. Pick a close color from the cards and touch up your fixes without having to buy a gallon of paint.