Sorry for advertising rustic (I’m the author of rustic), but there is the following syntax which IMO solves your problem:
rustic -r <REPO> restore <SNAP-ID>:/data /path-to-restore/
which only restores the /data
sub-tree of the given snapshot AND does not create a data
folder under /path-to-restore/
, but only all contents of the data
folder.
Of course this works with every snapshot sub-tree.
So I suggest you submit a feature request to restic to also use implement this syntax (or use rustic to do the restore).