How can a 51% attack be successful? In the paper by Nakamoto, miner can accept the mined block only if all transaction are valid. 

Assume that there are 5 miners in the world. 4 of 5 are honest that have 10% of 100% hash power and 1 of 5 is malicious that has 90% of all hash power.

Let's say group A consists of honest nodes (4 of 5).
Let's say group B consists of malicious node (1 of 5).

Group B wants to create a block which has a fraud transaction (e.g. Alice wants to spend 1000 BTC but she actually does not have it).
Group B is successively creating and propagating some blocks with huge hash power, but Group A does not accept these blocks because transactions in blocks are invalid.
Yes, 51% attack is not accepted with only hash power. So, length of chain of group A is short but group B is long. But group A does not accept chain of group B.

So my conclusion is that 51% attack makes a mess in the network, not coin control.

I'm confused. Please help me understand where I am wrong.
A 51% attack does not allow the attacker to spend coins they do not own; the usual rules of validity still apply for transactions and blocks. If those rules are broken, the block/transaction will be ignored by the rest of the network, no matter how much hashpower the miner making invalid blocks has. 

This question has a more complete explanation of what a 51% attacker can, and can not do.