I would definitely add Pingyao back in there per my previous itinerary suggestion.
For the Luoyang part, I would schedule a morning fast train Huashan to Luoyang, then do Longmen Grottoes and some city sights that afternoon, spend night in Luoyang. Next day to Dengfeng for Shaolin Si. While there are a lot of academies there for people taking courses, I'm not sure if they do a "fun" lesson or two over a day or so. I'm going to guess they do not, so while waiting for your investigation on this, keep the working model as per your original--to do this activity in Yangshuo. In this case, after the day at Shaolin Si (and there are some other things nearby like holy Mt. Songshan and one of the biggest active Dao temples in China), you'd get to Zhengzhou which is about equidistant to Dengfeng as Luoyang, and take the overnight train from there to Zhangjiajie, arriving midday.
Zhangjiajie: residual post-arrival half day to get to Wulingyuan and set up there. 2 days for Wulingyuan Park. 1 day whitewater rafting on the Mengdong River. 1 day Tianmen Mountain. So no, I don't think that 4 full days is too much. Putting Fenghuang or Dehang after is optional.
Yangshuo part--you can trim down after you see how the rest of the trip lays out and what the story is about Shaolin Si area lessons. Certainly what you have is too long for just ordinary sightseeing and typical activities (3-4 days is enough for that), but if your son ends up doing his kung fu there and you want to do your cooking classes or whatever, you'll need a bit of extra time.
I don't see any reason to daisy-chain extra stuff and more stops on this backbone, particularly as you said that you were more relaxed travelers.
