I think this has been suggested before, but most of these problems go away if the Doctor himself didn't think that the metacrisis regeneration counted until recently (perhaps after having been to Trenzalore?) After all, he would have known about the War Doctor, but evidently no one else did, so "fall of the eleventh" still makes sense. When the teselecta appears to regenerate, it does so because the Doctor assumed he would. When River poisons him, neither the Doctor nor the Silence know that he has used up his regenerations, hence the poison being thought necessary. Of course, he still has some regeneration energy left as of "Angels Take Manhattan", but perhaps not enough to fully regenerate?