The advice you've received is spot on. I suspect that by now your son and the other kids also throw these fits out of habit, so it may take something additional to break the habit.
First I would make it crystal clear what acceptable leaving behavior looks like and what unacceptable leaving behavior looks like (a T chart works great). In fact, you could begin the playdate by making the chart together, with the other friend and parent. Make it fun! Let the kids make lots of suggestions and be silly and dramatic in a fun way. Next, you could let the kids know that there will be 2-3 practice goodbyes. Announce after 15 minutes, "Okay, we're going to pretend to leave! Show me what a naughty goodbye looks like!" Let the ham it up, but keep it short. Then do again, immediately, this time showing what kids look like who have good manners when it's time to go. Repeat the whole process 30-45 minutes later.
Another option is to have them play-act it with stuffed animals. Kids really get into that and it takes the spotlight off of themselves, which seems to help.
I would include in your T chart what the consequences are for kids who have good manners when it's time to go: they get to continue to have regular playdates. Kids who do not show good manners? Perhaps the next playdate is only 15 minutes (I know- a tough one because the playdate is often a much needed break for the parent!). As behavior improves, so does the length of the playdate.
Good luck! One final suggestion: my daughter responds beautifully to reverse psychology. When it's time to begin the goodbye process, I whine to her, "Please throw a big fit! Please please please! Throw some toys and stomp your feet! Pleeease!" She vehemently says she won't, at which point I pretend to cry dramatically. It sends the kids into hysterical laughter and seems to work. How textbook psychology can you get? : )
J.