You would probably need a nested SELECT statement.
What exactly are you trying to do? You want to only show the highest average rating strain? Or are you ordering by the avg?
I think you might just want:
SELECT Avg(tblStrainRatings.Rating) AS AvgRating, tblStrain.StrainName, tblQuestions.*
FROM tblStrainRatings INNER JOIN tblStrain ON tblStrainRatings.StrainID = tblStrain.StrainID INNER JOIN tblQuestions ON tblStrainRatings.QuestionID = tblQuestions.QuestionID
WHERE tblQuestions.QuestionCategoryID = 2
GROUP BY tblStrain.StrainID
ORDER BY Avg(tblStrainRatings.Rating) DESC LIMIT 1