the "evpn controller", is deploying config for evpn+bgp (they are only a bgp daemon in frr, but different peers for bgp or evpn layer), with same ASN for both evpn/bgp peers.I ended up tossing the idea of using static routes and attempted again to setup bgp on the switches. The biggest thing I missed and also didn't understand was not only did I need to define an evpn controller in the SDN but also a BGP controller for the node I wanted to use as an exit node. I assumed the evpn controller was both and I just needed to use that ASN on the switch side. When that didn't work originally, I tossed that idea and went with the static routes. A new day, a lot of coffee and the ah-ha moment; configuring a bgp controller on the node was the missing piece for dynamic routing to work.
but if you need create custom bgp configuration (e-bgp, different ASN , different peers for bgp,...) you can add an extra bgp controller configuration.