I also dropped 7.x for the USB layer issues
recently come back for 8.x and it is looking pretty dang good.
I've not much experience with OpenBSD and it's ports tree but it is fair to say they run it a fair bit more conservatively for security reasons.
I've not played with Arch much (Gentoo was my Linux of choice back when I would choose such a thing), but I didn't feel portage held much water when compared with ports.
You definitely want to stick with ONE port upgrading tool you like, simplifies things a lot. Portmaster is quite popular, but for your purposes, portupgrade would serve you better (it may have a ruby dependancy, but it also has a -PP flag which updates your entire tree from packages where available.)
In my experience (I've just come back for 8.x, but I've run Desktops, and the occassional home server through 4.x, 5.x, 6.x) you get the most from FreeBSD by tracking STABLE and rebuilding your entire tree from source once per month (roughly.) Reading the UPDATING files is a sure fire way to keep from shooting yourself in the foot.
Granted, this does leave you with 1-2 (sometimes as many as 3) days where the machine is impacting performance while you're rebuilding the ports. In this case you can either slow it's haste by using renice, or go out to the movies or read a book (I prefer not to get in FreeBSD's way, although I've never found the build to slow down the system significantly enough to warrant not carrying on as I normally would.)
But YMMV. A much more stable approach is to track RELENG_8 (or update using the FreeBSD binary update utility 'freebsd-update') and rebuild the ports tree only after ever minor version number revision (8.1, 8.2, etc.)
I'm only mentioning how I do it because I feel it's worth the extra time involved. With CPUTYPE set in make.conf, a source build benefits me enough that I'd only benefit myself running packages if I was in a hurry to use the program. Also, there's nothing to stop you from installing and entire system with packages and rebuilding it from source at your leisure (I had a bit of trouble doing this with 8.x, but it was probably my own fault
.)
It's more or less the difference between a stage1 gentoo and a stage3 gentoo install.
A widespread mixing of packages and ports will shoot you in the foot if you track -STABLE src like I do. But if you do the binary updates or track only the 8.0 tree for major updates and security advisories, you'll not see many problems.