"FSO 4" is just a placeholder tag for things that could potentially be implemented but won't be implemented in the foreseeable future. It's sort of a joke tag that represents the asymptotic conclusion of the infinite 3.x.y series, but it serves a useful purpose as a tag to let people search for those issues. I know that at least one "FSO 4" issue has actually been solved.
As for versioning, we certainly do not want to jump to 3.8 immediately after reaching 3.7. We need to spend sufficient time on 3.7 that 3.8 would represent a major milestone. If we are running into a problem due to the need to keep release builds and testing builds distinct, then one solution would be to use 3.7.1 for the development and 3.7.2 for the release. Using 3.6.99 would also work, as was suggested earlier.
And we should keep the triple digit numbering scheme. People weren't getting tired of that so much as getting tired of the fact that it took so long to reach 3.7. The numbering scheme is, and has always been, 3.x.y.zzzz, where the first number is always 3 (for FreeSpace 3), x is the major version, y is the minor version, and z is the SVN revision. The only reason for dropping a digit is when using an informal reference, such as the 3.6 line vs. the 3.7 line. When we release 3.7, the internal version will actually be 3.7.0.zzzz.