I think you're both right. Chase won't close accounts without a reason. The "sole discretion" language simple gives Chase unlimited reasons. And just because Chase won't state that reason doesn't mean there isn't one.
Right, one big reason they close or deny accounts is because they're a partial owner of Early Fraud Warning. So if you're a customer and your account is flagged by this system, Chase will close your account without warning. You'll go to log in to your Chase account and it'll say the user ID no longer exists.
I had this issue with Bank of America very recently. Opened a new account with them as part of my new year's resolution, the account was approved, account funded, debit card sent, and then six days later, found out the account was closed when I couldn't log into the app anymore. This is the first I've had of any issues with a financial institution, so I've ordered both my Chexsystems and EFW reports for review.