The Doctor could communicate with the flesh, it read him and I think the Gangers could sense that there was another Doc now Flesh, even if they didn't know which one... So tbh the idea that he knew outrightly Amy was Flesh isn't really a leap...
If we add in the timey wimey and time looping back and the future already being the past and the possiblity that the Doc could sense it before going... Perhaps cause of a TARDIS scan, then the knowledge Amy was flesh is pretty easy for him to grasp
Not really. If as you say they could tell there was a Ganger Doctor around, even if they didn't know which was which, how could they not tell that there was another Ganger hanging about in the form of Amy? And even if they could tell, it doesn't explain why the Doctor went there and knew it must be 'the flesh' when it could have been anything at all. He took her there on that assumption before he had even had any interaction with the flesh. It could have been anything in the whole entire universe. But he went there and was right first time. It could have ended up being Auton Amy for all he knew. He couldnt tell the Romans were Autons last year so it wouldnt be a stretch to assume he would overlook this as well. His whole reasoning for his assumption was left unexplained