To clarify, there is a CP access controller (let's call this CP-NAS) and a CP web application (and this CP-WEB). The DHCP option could return the IP address of the CP-NAS (if not the same as the default gateway). We can then define a .well-known URL, such as
http://CP-NAS/.well-known/capport-redirect, which the client can use to learn the (possibly device and session specific) URL to the CP-WEB application. The CP-NAS URL is always HTTP and only does a 302 redirect to the CP-WEB application. This provides a convenient and standard way for the client to pick-up the CP-WEB URL (with all necessary query string parameters added by the CP-NAS) without having to "guess" a URL outside of the walled garden or wait for the user to visit a HTTP site. The CP-WEB URL can, and should, be HTTPS if handling any user data (though, perhaps not a MUST as a Terms of Service only wouldn't necessarily require https).
* Note: CoovaChilli already has this type of internal URL (http://chilli-ip:uam-port/prelogin).
I'm not sure it belongs in RFC, but ideally, I'd like to see Clients NOT use a limited (sandbox) browser when a CP-WEB is using HTTPS. TLS should be providing all the necessary security and Clients using sandboxed browsers for CP interaction is WHY hotspot providers circumvent OS CP detection. (I actually don't see much real benefit in a sandbox browser for HTTP either. A "bad" network could just also whitelist CP detection URLs, or even just offer pure Open WiFi, to prevent the sandbox browser from being used. However, if vendors do still use a sandboxed browser for HTTP CP-WEB, it will just encourage networks to use HTTPS, which is probably a good thing.)