Issue 1: The switch is dirty. Extremelly common on GA, GM refuse to recall more (yes, some got recalled).
Official fix: replace the 200$ switch assembly. It's the 2 arms on one single unit.
Non-official fix, which work very well: remove the switch, spray some contact cleaner inside where the contacts are. I used some "Electrosolve Contact Cleaner, zero residue" made by MG Chemicals.
http://www.mgchemicals.com/products/409b.html
Other brand would work too.
As for your other issue: possibly an abs sensor wire that is about to break... Have the code scanned to know which wheel cause the issue.
edit: beware if you remove the switch: you will see a shiny yellow wire there. Treat it extremelly well, this is the AIRBAG wire! damage it and there is a chance of the airbag that explode in your face.