You could create a separate dataset, with compression disabled (to disable the compression when writing zeroes), and use the shell to disable data read caching with zfs set primarycache=metadata Poolname/Datasetname
Re-run your DD commands and the results should be closer to a "pure HDD test" - which is likely to demonstrate a worst-case scenario, as a real-world workload could benefit from both the read caching and compression on writes.
I assume "RAID5" here is a pseudo-technical term, and you've configured a RAIDZ1 from within the TrueNAS UI?