The video was really helpful.
I watched it in slow motion and I realized that for all of your shots (not just horizontal), your grenade would go upwards just a little bit, then quickly corrects itself to go the right way. So it seems like something in the grenade code is making it go up when it gets made.
Sure enough, the direction starts at Vector2.UP, and the _process function makes it move in that direction.
But at the same time, in the "Level" scene you properly set the grenade's "linear_velocity" to its direction right after making it. So my thinking is that it takes a little bit of time to set the linear_velocity so the grenade defaults to going up for a split second.
I believe the solution would be to make the starting direction (in Grenade scene) to Vector2.ZERO, that way it doesn't try to move when it gets made.