I had to do this once. Because I didn't know how to create a MID string, I had to go around Robin Hoods barn. Okay, here goes...Try this:
Add one more field, call it something like "BogusFirstName" and use an UPDATE querie--let's use your example of "Austin John N":
Last Name:
Update to: Left([Full Name], InStr(1, [Full Name]," "

- 1)
In plain english, all of the letters left of the first space updates into Last Name field. Result: Austin
BogusFirstName:
Update to: Right([FullName], Len([FullName]) - InStr(1, [FullName], " "

)
This puts everything to the right of the first space into the BogusFirstName field. Result: "John N"
First Name:
Update to: Left([BogusFirstName], InStr(1, [BogusFirstName]," "

- 1)
We're repeating the first step: All of the letters left of the first space is updated to the First Name field. Result: John
MI:
Update to: Right([BogusFirstName], Len([BogusFirstName]) - InStr(1, [BogusFirstName], " "

)
Now we're repeating the second step: All of the letters right of the first space is updated to the MI field. Result: N
Run the first query to split the Last Name and the BogusFirstName. Then run a second query to split the BogusFirstName and the MI.
I know there's some programmer that can probably write 2 lines of code to do the same thing, but for the rest of us, this works.
Woo Hoo, I hope this works for you!