While no particular language is necessary, but good programming skills are, the languages you know are from a very narrow range. Therefore the thought processes that go into the programs you now write are also from a very narrow set of skills. It is a big world.
If fact, it is possible to program in most of the languages you name by writing barely disguised C code. Python is a bit better for avoiding that trap, of course.
But if you want to expand what you know, then build something significant in one of the languages you already know. Something big and complicated. If you haven't done that before it will greatly develop your skill.
But in the language area, since you ask about that, I would suggest learning at least one functional language, such as Scheme or Haskell. Both of those require quite different thought processes from the languages you know and you will benefit greatly from the (initial) struggle of getting your mind around that. The difference won't be "just syntax" but a different mental model.