Is it possible
I've run Debian in nspawn. It works great with minimal installs.
On the other extreme, if you do this with a desktop install, you should expect to find one or two little issues to work around.
should I use config files? Are they even recogised by systemd? For example if I set a hostname in /etc/hostname is it recignised properly?
/etc/hostname definitely works, it's supported by systemd, it's exactly what
hostnamectl would edit. In general, it's hard to see what you're worried about here. Debian Jessie defaults to systemd, so any documentation written for Debian Jessie about how to configure things - e.g. in the debootstrap appendix of the install guide - is supposed to work for systemd. (Although that appendix is more of a sketch, and doesn't show how you would make it run unattended).
From what you've said, you might be also interested in
systemd-firstboot. I haven't tried to use it and my understanding is it's limited in some ways, but it could be informative.
In any case I think you would need to use
systemd-nspawn --boot, having added a service file similar to the one used by systemd-firstboot. If you don't boot the system, e.g.
hostnamectl won't work... Once your script has finished one way or another, it would also need to shut down the system.
One notable issue is if you have any network services installed (including avahi, cups, ...), you probably want to run nspawn with
--net-veth or equivalent, to avoid conflicts with the host network services. To get network access at this point (e.g. to install more packages), set up a DHCP client on the interface