Okay so first just to note, not all of the print functions in that library have and end="". And indeed there does appear to be a logic to when they aren't including a newline, so it is weird that you are finding the output unworkable. Are you sure that there is not something else causing the issue? Eg, if you are running in a container, that might be messing up your logs?
Assuming that Amazon has messed up, I would then still suggest that your first strategy is to open an issue on the Github or submit a pull request. Overriding the standard library to deal with a bad third party library should be a last resort, if a resort at all.
Just to emphasize why, if you override the meaning of print, you're pretty much working in a new programming language then. Go too far down that road and everything will be unpredictable and unsupported and you will have a very hard time convincing anyone else to contribute to your code.
If you must though, there are ways to hook into print calls, and run a pre-function. I think the best way to do this is to capture stdout itself. Because, this way, the behaviour of print is unaffected (it still sends data to stdout). You are just saying that you want stdout to go do something a bit different in your environment, which is not something that uncommon to want. See and example of this approach here: http://code.activestate.com/recipes/119404-print-hook/ and here is an example of hooking directly into print: https://github.com/rugginoso/Pyjacker