Just restart it. Your system is into swap space and that's never a good thing over sustained periods of time. You've got 76M free, which isn't going to go very far. FreeBSD will LRU release some of that cached memory, but you're still a bit low. At least, it looks like a BSD top and not a Linux top.
Restarting MySQL isn't going to hurt. I'm certain it's going to cache data over time so the more that's hit, the larger it's size is going to be. Is that limitation configurable in my.cnf? I almost never deal with database administration of any type, so I'm not sure what configurations are available. If you restart it, it's going to have to go to disk more, not necessarily a bad thing.
Size is fine as long as you've got all the physical RAM to back it up. Might want to toss another 512 in the thing before the season starts, that wouldn't hurt.
-Jeff