I'm from Brazil, my first language is portuguese.
I'm also self-taught, never got a diploma or had formal english past the verb 'to be' that is taught in high-school. So I often have problem with words that sound similar, and with spelling of specific words.
Software wise I only use spellcheckers but those can be unreliable, often when I don't know a word I use google and synonyms to make sure another word wasn't better suited for the moment, but my main tool for dealing with that is to make a note with my most commonly mistaken terms and just manually edit them at the end of editing.
As i mentioned above, words that sound similar confuse me like 'where' and 'were' and it took me a while to learn.
I also started using this same note to keep track of expressions my characters use, that way I have a nice little list of contractions, and speech patterns at the end, for extra characterization.
Other than that, try and not be too hard on yourself, no amount of editing will make it perfect, If need be, ask readers for any word they see spelled wrong and correct if you can, but don't worry about being 'perfect'... Most readers can forgive one or two wrong words every few pages, especially when it's a one man's job and not a studio with professional editors.
Here is my work if you feel like checking it out.