Maybe a spine and leaf architecture could work for you.
You could install 1 server per leaf or more. I believe this could achieve high-availability and load-balancing at layer 2. There is a kind of layer 3 overlay, but for the hosts this is transparent and it feels like a real pure layer 2. I would go that route as it is also a very common setup these days. It scales well horizontally and no active/passive. It’s just active/active/active/active…./active. Jean