Unfortunately, this problem does not have any good solutions. In fact the "every other person at least once" property that you are looking for is not possible, which can be seen by counting partnerships between pairs of players on the same team. There are 20 partnerships to cover, 10 per team, however each round covers 4 partnerships, so the schedule as a whole has slots for 16 partnerships, meaning that (at least) 4 partnerships must be missing from the schedule.
In the schedules below players 1 to 5 are team A, and players 6 to 10 are team B.
Solution 1: where players 1 and 6 are always in the foursome and the 4 pairs who never meet are (3 5), (4 5), (8 9), (8 10)
(1 2 v 6 7) (3 4 v 8) (5 v 9 10)
(1 3 v 6 8) (2 4 v 10) (5 v 7 9)
(1 4 v 6 9) (2 5 v 8) (3 v 7 10)
(1 5 v 6 10) (2 3 v 9) (4 v 7 8)
If you don't like the idea of 1 and 6 opposing 4 times, then the next best is to have 5 pairs who never meet
Solution 2: Player 2 is always in the foursome and player 10 is always in a threesome and the 5 pairs who never meet are: (1 4), (3 5), (6 8), (7 9), (2 10)
(1 2 v 6 7) (3 4 v 8) (5 v 9 10)
(2 3 v 6 9) (4 5 v 7) (1 v 8 10)
(2 4 v 8 9) (1 5 v 6) (3 v 7 10)
(2 5 v 7 8) (1 3 v 9) (4 v 6 10)