I'm not seeing the jitter on my system. But I made some changes so floating point values are used. You can just set to 1.0 on the key pressed, you are normalizing anyhow so the magnitude of the value doesn't matter. So it could be that you were using integers, but Godot should convert these automatically.
extends KinematicBody2D
var velocity = Vector2()
func _physics_process(delta):
if Input.is_action_pressed("ui_right"):
velocity.x = 1.0
elif Input.is_action_pressed("ui_left"):
velocity.x = -1.0
else:
velocity.x = 0.0
if Input.is_action_pressed("ui_up"):
velocity.y = -1.0
elif Input.is_action_pressed("ui_down"):
velocity.y = 1.0
else:
velocity.y = 0.0
move_and_slide(velocity.normalized() * 180.0)
The other issue could be with the window size or pixel dimensions of the screen. If you are doing any sort of scaling (like setting test width / height) or zooming, etc. then this can affect pixel coordinates in strange ways.
Also, you test image has a stripe pattern in the background. This my make it a psychological effect. Meaning there is no jitter, but the pattern makes your brain perceive that. The human brain is weird. You should try with a blank background.