First issue - change your event to this:
if Enemy has LineOfSight to player -> Set Enemy angle to Anglelerp(Enemy.Angle, angle(Enemy.X, Enemy.Y, Player.X,Player.Y), dt*4)
Number "4" here is the speed of rotation.
Second issue - after 1 second you can move your enemy to this position:
MoveTo ->
X=Player.X + choose(-1,1)*random(20,50)
Y=Player.Y + choose(-1,1)*random(20,50)
This will simply move the enemy to a random point around the player within 50px, but not closer than 20px.
Or, if MoveTo behavior has "Move at angle" action, you can do something like this:
Set dist=distance(Enemy.X, Enemy.Y, Player.X,Player.Y)*random(0.2,0.5)
Move (dist) at Angle (angle(Enemy.X, Enemy.Y, Player.X,Player.Y) + choose(-1,1)*random(30,60))
These formulas are just off top of my head, may not work very well.