I would suggest you to restart the application (if possible) and then see if it works - it sounds like a deadlock in a database access during act_ru_variable table update (or another database related problem).
I think (but I may be wrong) that it is impossible to just "force this servicetask to end" and continue to next task. Imagine, what would happen if you cancelled a task and then continued the process without setting some variables within this cancelled task. You only can "wipeout" the whole process instance, but not a single task. To force a process to end you must use the RuntimeService.deleteProcessInstance method.