Since there is a -2% reading on both encoding lag and rendering lag (i.e. its balanced but poorly), OBS isn't getting enough Windows scheduling time to do its work. Try giving OBS more process priority than your game by going into OBS Advanced and Process Priority and set it to Above Normal Priority. This, assuming there is nothing else running in your system that is taking up a a lot of CPU usage other than these two.
If that doesn't work, you can also go into Task Manager and get down and dirty by setting affinities. More cores/threads for OBS, and less cores/threads for your game. But that is a pain in the ass to have to do that every time you stream.
If all that doesn't work, then use hardware encoding to get rid of the software encoding load put on the CPU by x264. Go download GeForce Expererience and update your Nvidia drivers. Then, in OBS use NVENC new instead of x264.
Your i7-8700K is a very good CPU for doing high clock frequency gaming resulting in really good FPS. However, its only a 6 core/12 threaded CPU. When you run x264 on your system, it defaults to taking up 9 threads for a 6 core/12 thread system. That means, there are only 2 cores available to handle your game, the operating system, and all other services and applications you have running. By using NVENC, you get get back those cores/threads making your system run smoother. So if your game can run on more cores or you want to run more applications and services, you will be able to do so while you stream without thread switching delays.
Also, since this is a "K" processor it can be overclocked. If you are overclocking, change your thinking. Of utmost importance is making your system stable. Monitor your system to determine if the processor is thermal throttling or power limiting because that too can cause sudden bitrate spikes and drops.