во-первых, абсолютно неважно, положительна разность, или отрицательна. тип size_t беззнаковый и операции с переполнением для него корректно определены
во-вторых, с указателями можно делать абсолютно что угодно, а процитированный кусок стандартна относится к сравнению на больше/меньше, т. е. гарантируется, что указатель на 1 элемент дальше конца массива будет больше, чем у на следующий уже нет
в твоём варианте ты посчитал разность, потом её прибавил - получил заведомо корректный указатель (неважно, каким способом) и его разыменовал