Can't create handler inside thread that has not called Looper.prepare()の対応はとりあえず下記でOKそう。

Looper  |  Android Developers

   public void run() {
	try {
	// 時間のかかる処理をここに記述。
	} catch (Exception e) {
		Looper.prepare();
    		Toast.makeText(this, getString(R.string.exception_occur), Toast.LENGTH_LONG).show();
    		Looper.loop();
	}
    }