After a full clean and rebuild, it became clear to me that unlike most contrib plugins, FortranProject is not automatically copied under the devel folder postbuild (which is normal, considering it's an external source tree). I was launching Code::Blocks with a newer SDK than one the existing plugin was built for.
Once I manually copied the needed files over, FortranProject loaded correctly.
Still, shouldn't Code::Blocks issue a warning when it finds obsolete plugins?