• you've got the meat of it there... instead of doing the filtering in your avg() function, do it in the WHERE clause:

    AVG(CONVERT(decimal(18,2), substring(hd1.workitem_comment, 115, 1))) AS 'Handled'

    ...

    WHERE substring(hd1.workitem_comment, 115, 1) IN ('1','2','3','4','5')