To answer your second question first - yes. MySQL supports SSL for encrypting connections. See http://dev.mysql.com/doc/refman/5.0/en/secure-using-ssl.html
The answer to your first question is a little more complicated. There are a lot of details specific to your configuration that could change the answer one way or the other, so there's no way to give an exact answer without more information. That being said, I can give you my general opinion.
Basically, if there are any untrusted hosts on the same network segment as either server, or anywhere in-between, then I would encrypt. For example - if either server is in a shared/hosted environment, then I would encrypt. If both servers are on your home network, then I probably wouldn't worry about it.
If you're still undecided, you may want to consider that it's probably better to have encryption and not need it, than to need it and not have it. If it becomes a performance issue, you at least have the option of turning it off or upgrading hardware.
And as a side note - the private IPs may help, or they may not make any difference. It really depends on how things are configured.