What is the purpose of this schottky diode reversed across the BJT base resistor?
Your guess is correct, it is there to turn off the transistor faster. The speed does matter, as the bit rate is 250 to 500 kbps, and typically the low pulse length is approximately 500ns, at least in the 150ns to 800ns range.

You can't use a 74HC07 with 3.3V supply to interface a 5V bus. The LVC07 seems like a better choise. Anyway, a design with 5V powered 74HC04 and driving the input with 3.3V signal from MCU is bad design, but as many STM32 devices have 5V tolerant IO pins, the MCU pins might be pulled up to 5V with a resistor so it can drive a 74HC04 input just fine.