Если нужен указатель на функцию шаблона, сначала необходимо создать экземпляр шаблона.
std::function<std::shared_ptr<Car>()> createFn = &Car::create<>;
Это сделает его компиляцией на clang ++ 3.1, но g ++ 4.8 все равно отказывается компилироваться, что, я считаю,ошибка.
Вы можете предоставить лямбда-функцию вместо:
std::function<std::shared_ptr<Car>()> createFn = []{ return Car::create(); };