It is certainly possible, in one way or another.
I do this wiht an image file, two layers of file system (ZFS), and one layer of dm-crypt. The setup is easy to describe: Put a snapshot-capable and transaction-resistent filesystem on the image file, put a new image file on that filesystem. Make an encrypted block device of that file with cryptsetup. Create a new filesystem on that block device, and mount it at a convenient place.
The unencrypted filesystem can now be snapshot and the image file with the encrypted filesystem can be saved from this snapshot.
The file systems must be transaction-resitant, in case the snapshot happens at an inconvenient time. The unfinished transactions will be ignored and a consistent version of the files should result. There is still some technical complication with ordering if multiple files are updated though (which I'm not qualified to explain) so a database might be upset at the result. I think nilfs2 has a configuration option to use strict syncing in this case, if that is important.
In practice there are many complicated and fail-prone steps to set up and tear down this, so elaborate and fail-resistent scripts with proper testing of what has already been done/undone are recommended. I use zfs because it is easy to manage, and simplifies this task.