Bus rapid transit (BRT) is a high-capacity public transport system that typically operates along urban transit corridors with dense travel demand. Maintaining the efficiency and stability of the BRT is paramount for daily transport operations. Owing to the difficulty in ensuring an exclusive right-of-way along the entire route, stochastic congestion events may occur resulting from road segments without dedicated BRT lanes. This may lead to volatility in travel time and resulting in passenger stranding, determined as common-case disruptions in this study. These common-case disruptions frequently occur in the daily operation of oversaturated BRT routes. To manage and mitigate their negative impacts, a novel timetabling problem for enhancing the resilience of a BRT system was proposed to assess the ability of the system to withstand and recover from these disruptions. We formulated the problem as a two-stage stochastic mixed-integer optimization model and designed an exact algorithm based on a tailored integer L-shaped method. We then analyzed the structural properties of our model and developed several acceleration techniques to further improve the efficiency of the algorithm. The computational results show that the proposed algorithm outperforms the commercial solver in large-scale instances and can provide near-optimal solutions when the commercial solver is invalid. Besides, external comparisons with dynamic programming also demonstrate the superiority of the proposed algorithm in solution efficiency. Compared with the benchmark timetabling problem, which aims to reduce passenger waiting time, the proposed method can efficiently reduce the duration of the oversaturation period by 35.3%.