I know I'm responding late, but I just found this request amidst my emails. My son was also, and still is, good at "holding it". He potty trained very well at 3 and a half. After he was potty trained for a little while, he suddenly refused to poop in anyone's toilet but ours. It was quite awful because he would hold it and be in pain at my mother-in-laws. She would feel so bad and tried to talk him into using her potty and offered him cookies and ice cream or whatever to get him to go, but that usually didn't work. I would try to get him to go in the morning before we left our house or at night. That way I knew he probably wouldn't have to go while we were out. I definitely think it was a control issue, even though it may have been sparked by something very simple that he didn't like. I highly suggest a reward chart, like we used, where he gets a sticker every time he uses the potty- pee and poop (at least for a while to get him excited and in the habit of going more often). Me and my son made his chart together. I wrote the words "Kal's Big Boy Chart" and made the lines, and he went over them with colors and decorated the edges. Once he filled up a row with stickers, he would get a surprise. This worked really, really well. He was excited about picking a sticker and filling up the row to get a surprise. I would pick up cheap, fun little toys when I was out shopping (like $1 items) and keep them hidden in a drawer. If you call it a surprise, it could also be something that he gets to do, like blow bubbles or something he enjoys. I definitely think it helped that he made the chart with me; it gave him more pride in using it. Also, you can continue using the chart later to positively reinforce other behaviors. On the pee side, my son could always hold it for long periods of time. Which, became a problem later. When he was about 5 and a half, he started leaking urine, in very small amounts, in his underwear without having any control over it. And he suddenly started peeing the bed, which he had never done, not even while potty training. I thought it was a Urinary Tract Infection and brought him to the doctor's office right away, but the tests kept coming back negative, and they told me it's very difficult for a boy to get a bladder infection because of the length of their urethra.
After going back and forth and the tests continuing to come back negative, they sent me to a pediatric urologist. They told me that he probably damaged something from always holding it in for long periods of time and that any pain was probably caused by the concentration of his urine.
He was put on a voiding schedule (to pee or empty his bladder every 2-3 hours), and we had to make sure he got 30 ounces of water/fluids every day (that's alot harder than you'd think). So, I would suggest that along with the chart, you prompt him to empty his bladder every couple hours - to get a sticker of course! And to get him in the habit of going more often, before he's about to burst, and keep him from developing any problems. What might help with the pooping is some gentle encouragement and talking about it. Maybe he could get 2 stickers for pooping in the potty! My son's control over it escalated to him not wanting to poop even at our house. The problem was that he was holding it so long, that by the time he could go at our house, it was hurting him to go. I had to talk to him a lot and explain to him that when he held it in, it made it harder to get out later. I told him that when he felt like he had to go, he should go in anyone's potty, so that it doesn't hurt. To finally get him to go and stop holding it, I told him his body wanted to get it out and he had to let it. It was really tough for a while there. My suggestion is that as soon as he starts pooping in the potty again a couple times that you stop putting pull-ups on him. Just make sure he empties his bladder right before naps and bedtime. Even if he doesn't feel like he has to go, ensure him that there is still pee in there and he can empty it out so he doesn't have to go while he's sleeping or have any accidents. The other thing that we did when we first started potty training might help you. We had potty parties. Maybe you could save them for when he poops on the toilet or whatever works for you, but I got a bag of party blowers (the ones that blow out, then coil back up or whatever you think he'll like) and while he used the potty or after he had gone in it, we would blow them together and sing "Potty party!" and fun stuff. You really have to make it fun and exciting. You can slowly back off all the rewarding and partying as using the potty often and easily becomes a habit to him. If you want to talk any more about it, just send me a message. My son is almost 7 now, and his bladder problem slowly got better and better. He hasn't wet the bed in a really long time (I was able to stop putting the night-time pullups on him), but he still does have some small amount of leaking once in a while. The leaking has never been serious enough to wear anything besides his underwear though, so it's not that bad. I hope that things have already improved since you posted your request and that they continue to get better! P.S. I'm sorry my response ended up being so long!