1) Pepper spray, and have it visible. Hopefully it's legal in your area.
2) When I had to use public transportation or walk through dark sketchy areas in Boston on the way home, I basically developed a "don't f*** with me" persona. If you look straight ahead and walk fast, don't try to move around people, they will move around you. Works best if you walk against the flow, so they see you coming. I know it's tough with social anxiety, but with a little practice, it's effective. If you can fake assertiveness, people will get out of your way. Like this:
https://www.youtube.com/watch?v=d2cUtdv99ig