How Could I Improve my current Workflow, I Using a Work Application Scope to find and replace fields on a Letter, but I do not need to open Word each time the automation runs, so I just need it done on the background.
Separate the workflow in components according to what they are doing, so it becomes easier to manage and test. Then, you just invoke them in the Main workflow. In your case, the components could be Extract Data (reading the Excel file and outputting the data to be processed), Replace Text (receiving text to be replaced as arguments and doing the replacement) and Notify Worker (containing the PDF creation and the Send Email activity).
It seems you’re creating temporary files, processing them and then deleting all of them. It may be easier to understand if you delete the file right after you finish processing them.
Remove empty sequences, like the one inside the Word Application Scope activity, which just contains another sequence (called “Do”) inside it.
As mentioned by @CBlanchard, using the System->File->WordDocument->Replace Text activity will make it work directly on the file without opening the Word application.
If you want to take an extra step to make it more robust, try using the ReFramework!