Yes, you can try it with routes. But I dont like individual profiles for containers. Macvlan is easy to configure with only 1 command to override eth0. (to receive DHCP)
You need LXD 3.19 for this feature:
And yes, you can use your host MAC (by default) to route it to your containers. lxc config device add c1 eth0 nic nictype=routed ipv4.address=public ip