I see that you send the block to the server and validate it but only to calculate and coordinate the payout for the next blocks, once you find a block you submit it directly to your own node (see submitblock function).
You need to run a personal node when running DATUM, if you found a valid block there is no possible way for anyone to stop the valid node from spreading to the hole network.