dynDNS: You use https://example.org:port/ into your browser, your browser will search the IP for example.org an then requests at the
ip:port the content of
https://example.org:port/. So your webserver knows the domain-name and port use to access different virtualHosts (when several domains are used on the same ip) and the associated scripts as well.
redirection: You use https://example.org -> browser gets ip address of the operator which sends you a redirection to https://ip:port/, you request at the
ip:port the conent of
https://ip:port/. It can't associate the content with the hostname (neither the webserver nor the script (owncloud) behind it).
There is a large number of DDNS provider, most of them can do that but their control panel is probably different. So it must be somewhere in the menu