Public Wi-Fi connection difficulty
If the iPhone decides that the cellular data connection will provide a better connection quality, it will choose that connection over a poor Wi-Fi connection. However, given no other choice (because you've turned off cellular data) the iPhone will attempt to maintain the poor connection over Wi-Fi.

There is no way around this other than to improve the Wi-Fi connection or to disable cellular data manually.