I was unable to get the posted config working, but after some poking got the following config working. The general approach is the one I found in use in most nginx reverse proxy configs for the Omada controller: replace Host with the host with port 8043 appended, and strip out the :8043 port in the Location headers coming back from the controller.
@wifi host wifi.drglove.ca
handle @wifi {
reverse_proxy tplink-omada-controller.drglove.ca:8043 {
transport http {
tls_insecure_skip_verify
}
header_up Host {host}:8043
header_down Location :8043 :443
}
}