I'm not sure how much help this is, but I just wanted to tell our related story. In Pk4 (2X) and KG (3 weeks) we heard all the same "concerns" (complaints). DS6 had maturity issues according to the school. This is why he repeated pk4. Boy was that a mistake! That was before we realized he was gifted. He's our only child, so we didn't have much to compare to. We thought all kids were like that!
So, of course, the "behavior" never got any better. He had difficulty paying attention, out of his seat, talking, seeking the teacher's attention, and talking to the teacher incessantly. What we have discovered is that if we put ds6 in a group of his peers, he tries to behave like them. However, his behaviors are exagerated, appearing to be even more immature. In addition, he wants to talk to the teacher b/c he relates more to her than his same age peers.
When we put him in a group (usually a small group) of children a couple of years older (or more) he behaves like they do. In fact, he acts more mature when he's with older kids than when he's alone with me.
I'm still kicking myself for keeping him in a situation that wasn't working and for repeating pk4. How do you gain more maturity by spending 7 hours a day with kids who are actually YOUNGER than you or are intellectually younger you?
My son also funtions much better in a small group rather than a large group. He has overexcitabilities and gets overstimulated in large groups, no matter what the age group is. He's very sensitive, and is just now learning to solve problems independently without melting down. That's just part of who he is. We finally told the school, "This is N******." It's who he is. It doesn't matter how many times he repeats grades, how many cards he pulls in a day, how many time-outs he has, or how strict we are. He is who he is. We have to find the best environment for him; he is not going to conform to the wrong environment. It's just not going to happen. We tried EVERYTHING.
I think you might be on to something with the small vs. large group. Is there any way to change that?