* Robert Cialdini's "Influence: The Psychology of Persuasion
* Jeff Cannon's "Leadership Lessons of the Navy Seals"
* Dale Carnegie's "How to Win Friends and Influence People"
Attend Public Speaking workshops. If there's a ToastMasters club in your area, join it. Improv can be another great way to learn how to get "less rigid" and more open with your communication style.
It helped me go from being too shy to give a presentation in front of one person to giving talks to hundreds of strangers at a time.
Pro-tip: you can attend the first one or two meetings of each toastmasters group for free so if you're a broke student like I was at the time, just rotate the groups since there are several in each city. Also universities often have great toastmasters clubs.
IMO it's the valuable part of Toastmasters. Toastmasters in general was too much of a cult-like environment for me, I wish there was a toast-masters 'lite' with just the table topics.
The thing about table-topics is you can't simulate it. People think they can do it until they get up in front of an audience of strangers. It's like that Mike Tyson quote: "everyone has a plan until they get punthed in the face" (couldn't resist)