This の signifies the two words refer to the same thing, and 相手の日本人 means someone who is 相手 and 日本人 at the same time. I do not think that using 日本人の相手 when you mean 相手の日本人 is incorrect. However, 日本人の相手 is ambiguous: it may mean the same as 相手の日本人, but it may also mean an opponent/partner/company of some Japanese person, as in トム吉田さんの相手. This is probably why the teacher said that it is more correct to say 相手の日本人 than to say 日本人の相手.
If you think that 日本人の相手 is more natural than 相手の日本人, that may be because 日本人の相手 corresponds better to the English expression, where “Japanese” is an adjective.