I have not observed the BLE scan stuck in any PSoC/PRoC Device. Could you please refer to the below points ?
1. Could you please check on how frequently you are calling the Cy_Ble_ProcessEvents() function ? This function must be called at least once for every connection interval or scan interval, whichever is smaller. This function checks the internal task queue in the BLE Stack, and pending operation of the BLE Stack, if any.
2. If you are not calling Cy_Ble_ProcessEvents function for enough time in the FW, then you can set a timer and call the CyBle_ProcessEvents function inside it.
3. ECO capacitance trim is required to supply the correct capacitance load to achive 0 ppm for the ECO. By default, the ECO capacitance trim values are set to the trim values of PSoC 4 BLE / PRoC 4 BLE modules. If any other BLE module is used (such as, EZ-BLE module), the trim values should be changed to the values provided by that module’s datasheet. Please refer to this KBA ECO Capacitance Trim Values for EZ-BLE™ Modules - KBA218990 for the CAPTRIM Register value.
4. Your scanning parameters are fine, setting the scan interval equal to the scan window will make the device to scan continuously.
5. It is recommended to upgrade the BLE component to the latest version v3.65. Please upgrade your BLE component and check the project. Also, please ensure that the BLE subsystem (BLESS) interrupt has the highest priority.
Please let me know if this helps.