I had a very similar problem with Serial.parseInt() taking much longer to execute than anticipated and changing the baud rate from 9600 made no discernible difference. I was sending commands to the Arduino from a Python program (to either reset an attached bn0O55 gyroscope or to send the current yaw). By replacing
command = Serial.parseInt();
command = Serial.read() - '0';
the time lapse between sending the command and receiving a response became negligible. This will only work if the command is a single integer between 0 and 9. The reason for the - '0' is explained nicely in this video: https://www.youtube.com/watch?v=g0pSfyXOXj8 at around 3:29.