Best Isolation Level to avoid deadlocks in Sql Server
I would recommend to rewrite this code to avoid the deadlocks.  In your case:

p1:

set transaction level L1
    delete from t1 where id=2
    select * from t1 where id=3


p2:

set transaction level L2
    select * from t1 where id=2
    delete from t1 where id=3