LXC VM running FreeBSD can't see hard disk

You can’t. LXD only supports a modern Q35 layout with OVMF.

Well, maybe you can try passing -bios through raw.qemu but I would expect other machine details to be incompatible with that.

It’d be quite good if FreeBSD would behave on virtual UEFI systems though, do they have an open bug report for this?