Here's two different methods to reorder fields via Python:
1. Add some dummy fields, calc over the values (FIELD1_DUMMY = FIELD1_ORIG), delete the original fields, add the fields you want in the order you want, calc over the values (FIELD1_ORIG = FIELD1_DUMMY), then delete the dummy fields.
2. Build a blank table, add the fields you want to retain in the order you want, then run the append tool to append the original records into the blank table with the reordered fields. As long as the field names/types are exactly the same, use the NO_TEST option, otherwise you have to use the ugly field mapping object which is a real pain.