Shouldn't be required add
#3 Rebuild all ports depending on downgraded port? Because those ports may depends on newer libraries installed with port, which has been forcefully deinstalled.
Or use pkg_libchk from
sysutils/bsdadminscripts to check, if all library dependencies pro all installed ports are satisfied and act depending on output of this check.
In case there doesn't coexist two version of downgraded port like in case of perl 5.8/5.10 mentionded before, you may be interested in
ports-mgmt/portdowngrade tool.