Usually we pay employees by the hour elapsed when they work. Since freelancers are not in our office, so I believe even professional journalism is still based on pay-by-the-word rules.
It's better to set up guidelines for them to deal with plagiarism like using synonyms, resembling sentences, shuffling phrases, list items, or even change the sentence into passive voice, or how to use paraphrases properly etc. So, the ultimate goal is the same old brand new content.
Your approach to get the word count is fast, but still, it's not fraud-free. If a freelancer posts something, then delete it, then repeat doing so, then the words count will surely be manipulated.
I'm thinking of some MySQL queries to count words in a column like this:
SELECT sum(LENGTH(content)) FROM ^posts WHERE userid =# AND created BETWEEN '2020-09-01' and '2020-09-30'
Of course some single/double quotes marks, or even some HTML tags are not a big deal (or are they?).