This might do the trick...
I created the following Calculation
IF MIN([Category]) = MAX([Category]) THEN
MIN([Category]) ELSE 'Grand Total'
Due to the way Tableau creates/calculates grand-totals it's only the Table Rows where MIN([Category]) = MAX([Category])
We can bring this field onto the tooltip and I've replaced the default Category field with this one.
A bit messy, but get's the job done!
Thank you, Simon!
This worked for me.