Does "Pulse in" function cause delay?

Your question [ Does "Pulse in" function cause delay?] Yes, it is a blocking function.

I think, first thing is to get rid of all delay() functions.

Do you know the distances you are able to read?
Do you know how long (microseconds) the range will take?
I really don't know, but I suspect that would be valuable info to know. Or use a library.