As
@Ericloewe said, dataset boundries are file system boundries. This is on purpose because ZFS lets you change characteristics of one dataset and not another. Meaning you can have LZ4 compression on the source, and no compression on the destination. (Or change in checksum algorithms, etc...).
So, it's by design that moving a file, (large or small), is an actual copy & remove source process underneath.