(1) If the Primary is only running the Gateway service then the cores of the Primary don't count against the overall core license count. The Gateway service is relatively lightweight so it should have little impact on the Primary itself.
(2) It would be good to use F5 to load balance between nodes running the Gateway service.
(3) Currently, only the Primary runs the licensing service. The workers occasionally need to validate their license against the Primary. If for some reason they can't and sufficient amount of time has passed, the services on the workers will become unlicensed. So really the need for a Backup Primary comes down to the licensing service running on it. At some point in the future we're hoping to have a version that any node can run the licensing service so if any node goes down another can take over that function but for now that's why a Backup Primary would be needed.