Start by following pinned post in this forum about posting an OBS log (link in my signature)
1. IP cameras run the gamut from cheap to broadcast quality (and price). there is an extent to which you get what you pay for. Cheap IP (security) cameras typically do NOT have a requirement for a consistent processing speed, jitter, latency, etc. so.. sometimes they do ok, and sometimes not. If you have an NDI camera, typically it should have plenty of 'horsepower' to have consistent video output.
Have you tried running the camera at 1080p25 and compared results with running 1080p50 in terms of AV (audio/video) sync?
Are you sure your IP camera can sustain 1080p50? If camera is capable of 1080p50, then usually not at the lower end (cheapest) of cameras. Assuming camera is 1080p50 capable, beware trying to do too much compression on camera to lower bandwidth as that could cause thermal throttling or other bottlenecks/overload in camera. Assuming wired Ethernet from camera to OBS laptop, have you tried using H.264 instead of H.265 (or vice versa)?. Sometimes mfg firmware is optimized for one codec/format, and the other(s) are less maturely optimized (ie half-assed). That will be camera make/model dependent.
Assuming that 2% CPU usage comes from OBS Stats... we'll I get it, BUT that stat is typically meaningless (in most cases, imho, unfortunately). What really matters is overall hardware resource utilization (CPU, GPU, RAM, disk, etc), which requires real-time monitoring (Task Mgr/Resource Monitor, or similar).
The problem with laptops can be thermal throttling (CPU/GPU/SSD, etc performance dropped to prevent overheating) ... and each make/model can possibly require different approaches to determining if indeed you are suffering from such
A suggestion from long ago is to make sure your audio sampling rates are consistent across sources. (check your OBS log, then go into Operating System and adjust as required). Personally, I recommend disabling unused Audio devices (ex Audio Out on HDMI monitor that NEVER has a speaker attached to it, etc)
Then there is making sure you are NOT using WiFi between camera and OBS (and preferably WiFi anywhere in data path at all). If using WiFi from camera, that could easily be the cause of your issue. Or a cheap IP camera that is not consistent in video output (resulting in varying sync).
Or you could have unexpected/background processes on laptop causing issues?
etc.
Have you tried testing and Record (not Stream) only and does sync issue exist then?