CO2 flooding can enhance oil recovery associated with CO2 storage, but its performance is often damaged by the gas channeling due to reservoir heterogeneity and the large CO2 mobility. Most current research focuses on chemical agents to prevent CO2 channeling, while there is less attention to reservoir engineering methods. In this study, a concept of balanced displacement was introduced to delay the gas channeling and achieve balanced development in a multi-layer and low-permeability block Y21. A series of lab experiments and numerical simulations were conducted to explore the best CO2 flooding scheme by considering three aspects of optimization. Layer grouping and well pattern and spacing adjustment were applied to seek for balanced utilization of geological reserves; gas channeling plugging and mobility control measures were taken to increase the CO2 swept volume; and the pressure control and injection-production optimization were carried out to improve the oil displacement efficiency. The results show that CO2 can reach miscible with crude oil in block Y21 under the original formation pressure, but gas breakthrough quickly occurs along the hydraulic fractures to the top of the structure. To obtain a balanced displacement, the layers of block Y21 should be divided into two groups for separate development. The current well pattern and spacing are suitable for CO2 flooding, which need not be adjusted. WAG injection with acid-resistant gel particles and foaming agents can be used to inhibit gas channeling. These measures can significantly improve the CO2 displacement profile in block Y21. The oil recovery factor can be increased by 10.01%, and 5.41 × 104 tons of CO2 can be stored. This study can provide valuable guidance for CO2-EOR and storage in low-permeability oil reservoirs.