Why use CASE? Why not just
AND ( ( (1 < 2) and rolename IN ('Owner Role', 'Eval Owner Role') )
OR ( (2 < 1) and rolename IN ('Eval Owner Role') ) )
I assume that in fact you do not have predicates that are hardcoded to evaluate to TRUE (1 <2) or FALSE (2 <1) and that they actually bind the variables in your actual code.
If you really want to use the operator CASE, you can encode
AND( CASE WHEN (1 < 2) and rolename IN ('Owner Role', 'Eval Owner Role')
THEN 1
WHEN (2 < 1) and rolename IN ('Eval Owner Role')
THEN 1
ELSE 0
END) = 1
, .