Ok, let's start with the school question. If your child is having so much difficulty in school, regardless of if they are shy, hyper, smart, slow, whatever...homeschooling is a great option.
Now about him. You need to see if you are setting a good example. Does he see YOU going up and introducing yourself to people or sitting back and waiting? If you are shy, as difficult as it is, you may have to force your self out of it.
I am very outgoing. One of my children were not. While I did not expect her to be like me, I made it clear, she was going to go up to people and introduce herself and learn to be friendly for the sake of good manners. I explained that people sometimes mistake shy for rude. Yes, we had some "painful" moments, but I explained this is good manners and we must learn them. I told my child (some would say force) them to go up, greet and introduce themselves to visitors at church or to their new neighbors (places they were comfortable and familier with). After a while it became second nature and she did grow out of her shyness a bit.
I have had several friends who were (in their words) painfully shy as children. They told me the best thing that happened was their parents would force them to introduce themselves to others. As a child, they remember being it torture, but as adults, they are very thankful.
There is nothing wrong with being quiet and shy....to a point. This may be a long, difficult and painful process, but it is a great lesson. Start with, "Hi, my name is ___. This is my son. Go ahead and introduce yourself, honey" Work form there.