I level my team evenly; when a pokemon levels up past the others, I move it to the last slot in the party and use everyone else until they’re at the same level. Rinse and repeat.
It’s tedious, but it’s how I keep everybody even. And obviously this doesn’t work perfectly; occasionally you’ll have a Pokemon faint and the others may climb ahead a few levels. To mitigate that, I keep the lower Pokemon at the front until he catches up with the rest.