I think you could lock threads with no new posts in the last 30 days and be fine. The info is still there and searchable, you can link to it, and it doesn't risk any errors from missing records in the database.
This should be something simple to implement as a scheduled database task, even if...