I think the reason this might seem different in ArcMap is because it will use the alias when viewing the attribute table.
Something you might consider is creating a blank schema of how you want your data to look(field names and order, etc...), export it to an xml workspace document.
A workflow might go something like this in a model;
1. Perform your join
2. Create File GDB
3. Import XML Workspace document (schema only), 'rename the layer to featureclassname_temp
4. Append data from joined Feature Layer into the featureclass created from previous step, here you can specify field mapping.
5. Delete the old version of featureclass, Rename the _temp version by removing _temp from the naming convention.
6. Now you should have a working featureclass with field names just the way you want.