I will ask a few more questions because I want to be sure I am not missing something here. You say that when you jump the starter the engine does not get cranked...but does the starter motor spin? Or, does it not turn at all but draw enough current to cause the sparking you noted?
In your post #543 above you mention that the battery measures 12.7 -- and I am sure that you meant Volts, not amps... Presumably this is when the starter is not being jumped. What is the battery voltage during the time the starter motor is powered during the jump? It should be well above 11 volts for a good battery, but under 10 volts during such a load would indicate that the battery is at its end of life, or at least not fully charged.
From all your descriptions, it sounds like the starter itself is in need of a rebuild, but you will have to take it out and to a shop to know for sure...