It's a copy because it's inherited from the base class, which cannot assume that every derived class stores its points -- and they usually don't, they compute it on the fly, except for sf::ConvexShape.
And you're worried about... what? Performances? So you really think that copying two floats, compared to copying a pointer and dereferencing it (that's what a reference is) will be much slower and impact your overall performances? Are you serious?