For sure I could, but as I said, sometimes the code is simpler to just ask for 0 bytes. I mean the pvPortMalloc is made to ask 0 bytes. It was just a wish.
My understanding is that pvPortMalloc does NOT have the same definition a malloc, that allows calling it with a zero size valid.
The simple solution, write a simple wrapper that you call that checks the size request, and if zero just returns the NULL, and if not calls the actual pvPortMalloc routine.
I am positively certain that once that happens, someone who relied on the current behavior will complain because of broken backward compatibility, so if I were in charge, I would not implement it.