In Sitecore exists an admin page that allows removing broken links. You can find it here:
You just select the database and execute the action.
You may need to change timeout settings in web.config:
<setting name="DefaultSQLTimeout" value="10:00:00" />
<setting name="DataProviderTimeout" value="00:00:00" />
I don't think you have better option for Removing Bronken Links.
Also what you can do, make a backup for your database on live,tell to editors to not add or update content.
Bring the database locally and run RemoveBrokenLinks page.