This is something that is very normal for RTSP. we generally see 500-2000 milliseconds of latency using the Media Source for RTSP feeds in OBS. Using the VLC source does get the latency slightly lower, but recently we have found the use of a Gstreamer source to be the best latency for the RTSP feeds. This does take jumping through some hoops. but once set up it works great with minimal latency.
Copy obs-gstreamer.dll from https://github.com/fzwoch/obs-gstreamer/releases/download/v0.1.0/obs-gstreamer.zip (\windows) to PathToOpenBroadcasterSoftware\obs-plugins\64bit\
Get https://gstreamer.freedesktop.org/data/pkg/windows/1.18.0/mingw/gstreamer-1.0-mingw-x86_64-1.18.0.msi and install.
So, first off, unzip the folder from the first download, open it and copy the file from within your OS folder to your OBS Plugins (64 bit) folder.
Then search in Windows for PATH, and open the "edit the System variables" then click the "Environmental Variables" Window. You should be able to look down in the System Variables window and find the listing that says Path, and then click Edit.
You should now be able to enter the path as it appears on your machine to get to the Gstreamer bin folder. Here is mine for an example: C:\gstreamer\1.0\mingw_x86_64\bin\
Now, Open up OBS and go to add a source, you should see Gstreamer as an option. For pulling in the camera feed, use this string:
rtspsrc location="rtsp://admin:firstname.lastname@example.org:554/1" latency=0 buffer-mode=auto ! rtph264depay ! h264parse ! d3d11h264dec ! video.
In this example admin:admin is the default username and password of the camera. 192.168.14.114 is my camera setup on my network here on site, you would use your own cameras IP address.