Ok, I'm am a nontraditional as well so I hope I can offer some good advice:
1. Your 3.1 is too low for an MD school. You will need a 33+ to compensate if you want to have a shot. It's also lower than what most DO schools require but you can probably get in with a 30 and a 3.1.
2. You DO need to do some volunteering. Currently, your previous pharm experience means adcoms are unsure why you want to do med school and want to know that you have researched this option. Your low GPA means that adcoms will not forgive you for your lack of clinical experience for your high stats. Also, volunteering does not have to be time consuming. Once a week for a few hours is good enough. Shadowing is recommended as it can cement your decision and looks good on your application with minimal work.
3. Your pharmD will not hurt your chances but you will need to answer 'why medicine?' question. You also need to make sure your stats are up to snuf. You get no brownie points for having completed a pharmD (i.e they won't cut you slack on your MCAT).
4. To raise your GPA, you may want to consider taking some upper level science courses at a local university. While studying for the MCAT, I realized there was a point when I could not raise my MCAT score any further no matter how much I tried. If you can't hit above 30, you probably won't get into med school unless you can raise your GPA. Given that you already did your pharmD, perhaps doing a special masters program may be better since you would need a lot more undergrad credits to raise your undergrad GPA. A special masters program takes a year to do and if you did well, can help 'erase' poor undergrad performance.
Hope that helps.