SetEndErrorSize is a global setting you change via gStyle. Therefore when you change it, it apply on all histograms. One way to bypass this you can use the TExec facility:
gStyle->SetEndErrorSize(...);
h1->Draw();
TExec ex("ex","gStyle->SetEndErrorSize(...);");
ex.Draw();
h2->Draw();