But 好き describes the subject as the one being liked. 僕 is not the one we like, right?
In main clauses, yes, this is true. In "AはBが好きだ", B is the one being liked. However, in relative clauses, you cannot use は, and both A and B can be marked with が:
- AはBが好きだ。
A likes B. (literally: As for A, B is a favorite).
- ____Bが好きなA
A who likes B
(A has been pulled out)
- Aが____好きなB
B which A likes
(B has been pulled out, and Aは has been changed to Aが)
See my previous answers, too:
Your sentence is a cleft sentence, which involves a type of relative clause before the の. This means 僕が好きなのはXだ is indeed an ambiguous sentence that can technically mean either of the following:
- The thing I like is X. / It's X that I like.
- The one who likes me is X. / It's X who likes me.
In your sentence, X corresponds to 日本料理ではなくタイ料理 ("not Japanese dishes but Thai dishes"), which never loves a person. So the only possible interpretation is the former.
Practically speaking, in more than 90% of the time, 僕が好きなのはXだ should mean "It's X that I like". But in the following context, 僕が好きなのはXだ clearly means "It's X who like(s) me".
この4人の女の子は、みんな太郎と僕のどちらかのことが好きだ。太郎のことが好きなのはAさんとBさんで、僕が好きなのはCさんとDさんだ。
All these four girls like either Taro or me. It's A and B who like Taro, and it's C and D who like me.