Validating custom meta boxes with jQuery results in posts being saved as draft instead of published post

So here’s what I ended up doing: I hide the publish button, replace it with my own publish button (one that does not submit the form) and when you click that button the validation script is executed. When there are no errors, a click event is registered on the original publish button. That way, no more drafts and problem solved.