Don't really agree that hold is not affected.
It's true that having smaller clock period does not affect hold; but what about smaller delay? Hold violation happens when data reaches the endpoint too fast (so fast that previous data was not properly consumed by the endpoint.) When we assume very small SOD, we are assuming the data delay from the output port to the destination outside only consume little delay (Agree until this point?). Won't the total delay be so small that hold time requirement is violated?