Hello Tammy,
It's number four in your list below which is accounting for the
decimal percentages
By changing the Finish dates on tasks project is constraining the
tasks with a Finish No Earlier than constraint. Project is then
recalculating how to fit the actual work entered into the new dates.
You can see pretty easily what is going on with a simple experiment:
Create a 1 week duration task starting today and scheduled to end on
May 16.
Assign 3 resources (Bob, Julie, Tammy) to the task each working 40
hours at 100% unit assignment.
View the Resource Usage View and show actual work. Zoom out to show 1
week in the minor unit.
Enter 23 hours of work for Bob in week one. Because Bob worked less
than the forty hours he was scheduled for, project took the remaining
17 hours and spread them out into the week beginning May 11. The
finish date of the task is now Wednesday May 14th at 9:00 AM. The
remaining work has extended the end date of the task.
If I go back to the Gantt chart view (or any task view) and change the
finish date to Friday, May 16th, Project selects the 16th at 9:00 am
as the finish date of the task. I do get a message warning me that
the "Actual finish date is before some of the previously entered
timephased actual work values. If I click OK, project changes Bob's
actual hours to 18.98 hours because it is ending the task at 9:00 am.
In order for Julie & Tammy to complete their 40 hours, the assignment
units have increased to 121%.
I suggest that if your PMs want to change the scheduled finish of the
task, they modify remaining work, not change the Finish date

If
your PMs are not viewing time as well as dates, I'd suggest turning
that option on. (Tools > Options, View tab and select a date format
that shows time.)
I hope this helps. Let us know how you get along.
Julie
Project MVP
Visit
http://project.mvps.org/ for the FAQs and additional information
about Microsoft Project