While there are more issues, to my mind the largest sticking point is the management of the non-free and contrib components. While the Debian Social Contract explicitly exclude them from the Debian system, they are still maintained by the Debian *project* for use *with* the Debian system, which according to the FSF guidelines is enough to be considered "encouraging" their use.
I can not see Debian being approved by FSF without externalizing them to a separate project, with a separate community and brand (though possibly still hosted on Debian maintained infrastructure).
My imaginary "nonfreedebs.org" would have their own website, wiki, forum and mailing lists, all separate from debian.org. While nonfreedebs.org would make plenty of references to debian.org, debian.org would never reference nonfreedebs.org. Also, while the Debian installation media would not include any non-free software, or in any way mention nonfreedebs.org, nonfreedebs.org would offer re-branded installation media that does.
The fact that both debian.org and nonfreedebs.org would be hosted on the same physical computers, and that most (if not all) nonfreedebs.org developers would also be Debian Developers, should make no difference to FSF endorsement of Debian.
For this to become a reality, section 5 of the Debian Social Contract would have to be changed, which would require a General Resolution.
While the exact wording of such a resolution would have to be worked out by people smarter than me, and FSF should be consulted to verify that it indeed would be enough to satisfy them, the following should be a decent discussion starter:
5. Works that do not meet our free software standards
We acknowledge that some of our users require the use of works that do not conform to the Debian Free Software Guidelines. While such packages will not be offered as part of the Debian system, they can be configured for use with Debian. To support these users, we are prepared to provide infrastructure (such as web hosting, bug tracking system and mailing lists) for a third party to use to provide non-free packages compatible with the Debian system.