The Solution: The method of clearing the data for both the Gmail and the Gmail Data apps, described above, works every time.
The Cause: I believe I may have discovered the cause. Someone somewhere mentioned that they suspected it might be a file locking issue. In my case, I use an app called TapeMachine Recorder. I record a voice message, then select Share, then via Gmail. I now believe the cause of the problem was that the app still remains open with a copy of the same file open. And I get the "hung on Sending forever" situation.
Now, I follow the same steps, but.... as soon as I send the file via Gmail, I immediately open a new blank document (select New Recording) - effectively closing the current recording file - and bingo! I haven't had the problem again since.
Conclusion: Whenever you send something out as a Gmail attachment, be careful to then immediately close that document -- or make sure that any apps that may have it open, close it. Remember, on Android, apps don't close.... so exiting the app is not enough to close the document (file) that the app has open. You must explicitly close the file within the app... or open a new file within the app.