I think ... who...เป็น “ประธาน” ของประโยค ... whom...เป็น “กรรม” ของประโยค (NOAD) is not quite correct, but กฎทางไวยากรณ์ เป็นเรื่องง่าย โดย
“ใช้ “who” (whoever) เป็นประธาน ของ กริยา หรือเป็น “predicate pronoun
“ใช้ “whom” (whomever) เป็น กรรม ของ กริยา หรือ บุพบท
is.