Does kernel only sets pxHigherPriorityTaskWoken to pdTRUE and never resets it?

Can I safety assume, that is calling any kernel code that takes pxHigherPriorityTaskWoken will only set given variable and never will reset it?
...
signed portBASE_TYPE need_yeld = pdFALSE;
xQueueSendToBackFromISR( some_queue, sime_item_ptr, &need_yeld );
xTimerStartFromISR( some_timer, &need_yeld );
portEND_SWITCHING_ISR( need_yeld );
...
Is this code safe?

Does kernel only sets pxHigherPriorityTaskWoken to pdTRUE and never resets it?

Yes that is safe – in fact you are using it exactly as it is intended to be used. Regards.