The problem will be solved by looking at the information revealed and then trying to analyze what conclusion can each player reach given the facts.
Stage 1
After dealing the cards they are placed on top of each players head. The situation, thus, is as follows:
Andy: 1,5,7
Belle: 5,4,7
Carol: 2,4,6
Stage 2: First question
The newly revealed information deals with card sum. Carol has 12, Belle has 16, Andy has 13. But Andy does not see his sum. As Carol and Belle have different sum, I must be this second player which Andy sees with the same sum. So, my sum is either 12 or 16.
Stage 3: Second Question
Belle can see all the odd numbers from 1 to 9. There are no odd card on top of Carol's head. Andy knows Belle cannot see her own 5 and 7. From the fact that he speaks, I can understand that my numbers include 3 and 9. As these are the only odd numbers that Belle can see, Andy understands that the rest of odd numbers (1,5,7) is on top of his head. At this stage, (actually, the same moment) I can also know my numbers. As Belle sees 1,5 and 7 on Andy's head, she has to see 3 and 9 on mine. The sum of my numbers is either 12 or 16 – but I already have 12 (3+9), so (with 0 not an option) the last number has to be 4. I could actually beat Andy and win
Final Stage: What do we know?
Actually, Andy solved the problem based on the second question only. The first question did not reveal any info to him - well, it could not have, since it is HE who was asked. I, on the other hand, had to use the whole information to obtain a solution.
Belle knows from Andy's words that her card sum is either 12 or 16 (according to Andy's words). Her situation is like mine before the second question.
Carol knows almost nothing regarding her cards. She can see that me and Belle have the equal sum, so first question does not provide much info to her. From the second question and Ansy's words she might conclude that she does not have 1,5,7 – otherwise Andy could not have solved the problem.