I think "The man who I thought was thoroughly honest proved to be a swindler" is acceptable. But my book says the answer should be "whom" [duplicate]

Whom is incorrect in this case. You can turn your statement into a question as such:

Who did you think was thoroughly honest but proved to be a swindler?

Answer: I thought he (the man) was.

You would never say:

I thought him was.

By the way, in modern English, you can always use who instead of whom. Whom has been falling out of favor for a long time. You’ll scarcely hear it in casual conversation, and even in formal contexts, who is widely accepted. It’s better to use who when you could’ve used whom than vice versa. Being wrong while trying to enforce a prescriptive rule will always garner heaps of ridicule.