You can still add all the players in another family and adress it to identify who's party is acting, adding another variable that represents the team is also a good idea. Alternatively you can make players into animations of one single object. They would differ by their individual variable settings. I believe if you can represent a difference between players with a variable rather than creation of an object class then it's going to be better and more flexible system
I'm trying to create a game inspired by Final Fantasy Tactics, where the player can control several totally different characters, with different skills.
Wouldn't this system you mentioned using the same sprite with different animations for the other characters be a problem when individualizing each one?