It really sounds like you're doing all you realistically can.
Mine are twice that age and the meltdowns are amazing to behold
(they have autism)
ime, there's not really much you can do to stop it, if they're a whinger, they're a whinger and it's THEM that have to change it, and until they are prepared to, it can't be externally changed against their will, iyswim. You can only carry on making sure they never gain by whinging - ie you NEVER give in to them, you NEVER allow anyone else to give in to them. In short, whinging NEVER gives them the desired outcome. Hopefully, in time, they realise that it's pointless.
Plus removing them from whatever they are doing as soon as they whinge. "Oh well, if you're whinging, clearly you're not having fun, so we'll stop now." and end the activity instantly.
I even did finger on lips, ffs 
I'm afraid that now I have reached the stage where when they whinge, I say "Well, sorry, but tough luck. You don't always win." I don't try to negotiate with them, I don't try to jolly them out of it. I DO listen to how they are feeling. That is always important. I explain that people won't like them if they behave like that. But if they want to whinge, they are going to, and all I can do is carry on trying to teach them how to deal with disappointment in a different way, but if they whinge, then they get no sympathy and they face the consequences.
And I have learned to not hear them, so that it doesn't drive me crazy
I can block it out. That helps me 