Our solution is to create a temporary table and insert all the PKs that we need to delete to it.
Then we can use an inner join from our main table to that temporary table to delete. It is hitting index nicely for us.