A と関連する B の両方に検索テキストが含まれている場合、クエリはレコードのみを返します。
ただし、何が機能しないかは述べていません。
全文検索を LEFT OUTER JOIN して、置き換えてみませんか?
SELECT *, (ISNULL(ftTableA.[RANK], 0) + ISNULL(ftTableB.[RANK], 0)) AS total_rank
そして
WHERE ftTableA.Key IS NOT NULL OR ftTableB.Key IS NOT NULL