Non ho molta familiarità con le molte stranezze di mySql, ma anche questo dovrebbe funzionare e forse mySql non si strozzerà su di esso:
delete from articles
where not exists (
select id from authors
where authors.id = articles.author_id
)
Uhm, ovviamente abbiamo sempre un backup della tabella prima di tentare eliminazioni basate su set :)