Как отследить нажатие 1 раз?
Почитайте документацию - и используйте хотя бы keyboard.hook вместо keyboard.is_pressed
Опытным путём установил что что у меня реакция не как у Джет-а Ли) получается что пока кнопка нажата вызывается эта функция keyboard.is_pressed и с не очень маленькой скоростью поэтому у вас в файл и записывается много значений как вариант могу предложить следущий код с использованием задержки что бы вы успевали отпустить клавишу
from time import sleep
import pyautogui
import keyboard

ENTER = "enter"
ESCAPE = "escape"

def writing_data_file():
    if keyboard.is_pressed(ENTER):
        sleep(0.5)
        cursor_position = pyautogui.position()
        print(cursor_position)
        with open("cursor_position.txt", "a") as file:
            file.write("{0}\n".format(cursor_position))
    if keyboard.is_pressed(ESCAPE):
        quit()

while True:
    writing_data_file()
А так решений можно много найти, просто не совсем понятно с какой частотой вам нужна позиция курсора)
И да как посоветовал  Владимир Куц  читайте документацию перед использованием библиотек
А то я пока экспериментировал чуть HDD не форматнул))))