I think this can be done by identifying "critical" points (i.e. those that surpass some threshold of angle [e.g. <45 degrees at points 10m away, or something]) and then extending a short cutting line opposite the angle. Of course, this will take you some time to figure out the math, learn Python, script, deal with unforeseen errors, etc. In the end, depending on how many times you need to do this (are we talking tens or millions?), as Dan_Patterson says, it may not be worth figuring out.