Вы абсолютно правы, просто используйте тайм-аут для вашего соединения, но это не значит, что ваша база данных не будет заблокирована, когда ваша база данных будет заблокирована, она будет заблокирована для этого конкретного примера кода тайм-аута
conn = sqlite3.connect("mydb", timeout=10)
это означает, что всякий раз, когда база данных блокируется, база данных разблокируется через 10 миллисекунд