The best strategy for public online races is to be in a lobby with few other players (maybe 3 tops) and to just be persistent. Play clean, and capitalize on others mistakes. If you are the lobby host, change the tracks to ones you are familiar with and you run well on. Also, your fastest time from the previous race determines your starting position. So if you fall behind and a win looks like it's out of reach, try to crank out some fast laps to start up front in the next race. Of course, the easiest way to get it is to boost with a partner in a private lobby and just trade wins.