While I agree with what I imagine to be general consensus that this error seems crazy, luckily there appears to be a workaround: Update a custom flag using Apex, and then use workflow rules to handle the dirty work of updating restricted standard field(s).
While I've only tested this approach on the scenario below, I think it will be applicable to solving other similar problems with updating Task records using Apex.
Sample solution to close recurring tasks using Apex
The anonymous Apex code below illustrates the solution.
And there's nothing special about the checkbox field, the workflow rule or the field update. The idea is that when the checkbox is checked, the workflow rule fires and performs the field update.