La cause première d'une halitose c'est les soucis dentaires et surtout l'accumulation de tartre. Peu importe ce que le chat mange... le mieux c'est d'habituer le chat au brossage des dents avec un produit adapté... mais très souvent on n'y pense pas (et c'est dommage). Imaginez un peu si vous aussi vous passiez votre vie à ne pas vous laver les dents ? C'est pourtant ce qu'on "inflige" à nos chats car on ne veut pas leur "infliger" un brossage
Donc si le chat est encore jeune il n'est pas encore trop tard pour essayer de le faire... le véto saura vous montrer le geste, généralement vous avez un embout à mettre sur l'index pour appliquer le produit et faire quelques mouvements circulaires... je précise au cas où qu'il ne faut jamais utiliser de dentifrice dédié à l'humain pour un chat

... Il existe aussi des poudres à base de kelp qui disent prévenir le tartre mais pour avoir testé c'est pas très appètent + très riche en iode.
Une des causes de gingivites récurrentes c'est d'être porteur (même sain) de calicivirus. Pour le savoir il faut faire un prélèvement PCR à l'occasion d'une anesthésie (donc par ex lors de la castration...) qui sera envoyé en labo et qui est très fiable. Aucun traitement n'existe, mais la vaccination permet de diminuer les symptômes... et pour les soucis buccaux il y a plusieurs options, certaines plus coûteuses que d'autres.
Mais il y a tout un tas de choses qui peut aussi causer la mauvaise haleine, certaines maladies par ex...
Dans tous les cas, quand on a un doute la meilleure solution reste de prendre rdv chez son vétérinaire qui saura aiguiller sur ce qui peut être la cause.