C++11のSFIANE地獄へようこそ
https://wandbox.org/permlink/2sfUVeEBrErqvI2R

template関数の実体化が1つだけ成功して、
他が失敗するように仕掛ければ呼び分けは可能。

ただ見ての通り相当面倒なことを書かなきゃならない。