I don't know your corporate culture, but I'd say go for the first three at least. We have a documentation generator (it's old and clunky now) that does it (it sucks up all the VI descriptions, control documentation, etc, and puts them into a chm, and then adds the relative links to each chm page back into the context help for each referenced VI), and it works well for the end-user.
PS: "Using a pand on the window to display..." - I suggest you just use context help for that - it's free, it's easy to use/maintain, and is a simple keyboard shortcut away. Honestly, I think it's one of the most under-used features in custom LabVIEW apps: everyone uses it within the development environment, but hardly anyone uses it in their apps.