ごめん勘違い。Haskell2010の範囲では無理
GHC拡張を使っていいなら

{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}

class P p a where
  ext :: p a -> a

data Test a = T (a, a)

instance (Num a) => P Test a where
  ext (T (x, y)) = x + y