Perhaps an adjacent column where you remove all these known "strings" that make the names not match. This will remove "private owned" from all the strings...

=TRIM(SUBSTITUTE(A1, "private owned", ""))

You can add more like so:

=TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1, "private owned", ""),"S/B", ""),"Company", ""))

Copy the formula down the whole column, then do your sorting/match tests.