How can I protect myself while using public wifi hotspots?

Solution 1:

It's a bit complicated but you can setup a VPN at home and connect to that. That way all your traffic is encrypted.

http://www.bauer-power.net/2008/07/setup-simple-vpn-server-using-windows.html

Solution 2:

Make sure that all of your connections are using SSL. For example use https://gmail.com instead of http://gmail.com. Same goes for your bank, etc.