The easy way to transfer files using SSH-like technology is probably to use the scp command that comes with OpenSSH.
scp username@172.31.98.84:/file .
If you want to try a GUI, WinSCP.net is good for Windows. You could have it connect to 127.0.0.1 to see what filenames appear.
It sounds like one system might not be accepting traffic on TCP port 22. That could be due to a lack of an SSH server, or it could be because of firewall-like technology blocking the traffic. I suggest "netstat -na" (should work on Unix-ish systems, which I understand Mac OS X to be... also works on Microsoft Windows) to confirm whether you're listening on TCP port 22 (and on what address). Otherwise, can you run sshd to start an SSH server?
As for whether systems can communicate with each other, that depends on how things are set up. In theory, Starbucks could restrict traffic between devices on the Wi-Fi, making such communications unable to happen over the Starbucks network. In practice, many organizations don't bother with such protections. I don't know what Starbucks does recently, and chances are that such details may be subject to change over time.
Another possibility may be to use an "Ad hoc" Wi-Fi network. If you can do that with both of your computers, you may not need to even use Starbucks's Wi-Fi equipment at all (which means that Starbucks's Wi-Fi would not be causing any problems).
Turning off Windows Firewall, as suggested elsewhere by another answer, is likely to help the Mac communicate to the Windows Firewall. It's actually an approach that is NOT recommended, despite the fact that it may work. That approach may be easy, but also cause unnecessary exposure to security risks. Better approaches can be done, like simply making a single rule/exception in the Windows Firewall software so that TCP port 22 can be reached from external traffic. You may wish to test such connectivity from an environment that may be easier to troubleshoot some things (like at home, with similar machines, on a wired network).
I hope that answers your questions. Some of the data you provided is a bit vague (what system was able to run "ssh" successfully? What system had that IP address?)