Вы рядом. Когда вы открываете файл во второй раз, вы должны открыть его в режиме записи, чтобы иметь возможность писать содержимое.
with open(os.path.join("C:/Users/Francesco.Borri/Desktop/passivo GME", filename), 'w') as f:
f.write(content)
Как только вы исправите это, я думаю, что вторая часть вашего вопроса просто поддерживаетпеременная, значение которой вы увеличиваете каждый раз при замене строки. Вы можете сделать это вручную (перебрать строку) или использовать функцию замены в цикле for:
with open(os.path.join("C:/Users/Francesco.Borri/Desktop/passivo GME", filename)) as f:
content = f.read()
for i in range(content.count("YYYY")):
content.replace("YYYY", str(i), 1) # or str(i+1)
with open(os.path.join("C:/Users/Francesco.Borri/Desktop/passivo GME", filename), 'w') as f:
f.write(content)