Neither the jail nor system need to be started/stopped to make changes with ifconfig.
The proper config is a bridge with the physical interface and jail interface. You also need to have sensible IP settings for everything. I know this works, I have jails working with VNET.
I know you had raw sockets on in the original post, but that doesn't mean it didn't get [inadvertently] changed at some point. It's easy to transpose a digit or some other error. You could use something like curl/wget to check a web site. A simpler tool, host would check DNS resolution.
Are you positive your router is setup correctly? You could verify that by temporarily changing FreeNAS to use the network setup for your jail. Maybe better, configure a laptop or something else so that you're not mucking the NAS up.
You probably would have been better off using em0 for your jails and em1 for your NAS. From my experience iocage likes to automatically create bridge0 and dump the first NIC in it.