I would store the HTML in NVARCHAR(MAX) (or less if you don't need more than 4000 characters). Don't use the TEXT/NTEXT data type unless you are stuck in SQL Server 2000. They're deprecated and the benefits of the MAX types make their usage foolhardy IMHO.
I would investigate storing the files as FILESTREAM in SQL Server 2008. If you are < 2008, or you have investigated the trade-offs and FILESTREAM is not an option, then my personal preference is to store files on the file system, and a local and/or http reference to the file in the database.
The benefit of storing the files in the database is that you get transactional consistency. The downside is that you use much more database space, which is usually on more expensive storage. You also have a much harder time debugging (you can't just say "SELECT PDFFile FROM Table" in Management Studio, and expect Acrobat Reader to pop up and show your column's contents).
Since at work I have to beg and sign over the rights to my unborn children for more SAN allocation, and at play I get charged a lot more for my database space usage than my file space usage, I opt for file-based storage every time. At work our file system is backed up and, while it is not 100% in sync with the database backups, we have seen so few file corruption issues that weren't the fault of the end user (and easily corrected without our involvement) - zero, in fact - that it doesn't seem worth it to investigate.
Like I said, personal preference. But ask the right questions and understand your goals and limitations.