Names and addresses are difficult to play with unless there is some solid rule / criteria that can be used.
Try following formula as in G2 (CTRL+SHIFT+ENTER) and see if it works for you:
=LEFT(B2,MIN(SEARCH(CHAR(ROW($A$65:$A$90)),B2&"ABCDEFGHIJKLMNOPQRSTUVWXYZ"))-1)
copy down
Or alternatively it can be entered as non-array way (basically same formula except all characters typed) and it will be bit bigger but will be faster.
=LEFT(B2,MIN(SEARCH({"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"},B2&"ABCDEFGHIJKLMNOPQRSTUVWXYZ"))-1)
copy down
And then in H2:
=MID(B2,LEN(G2)+1,99)
copy down