Nåväl, inom en timme efter att jag postade min fråga, kom jag redan på det. Jag kanske borde ha gjort lite mer research innan jag postade.
Problemet är att sqlalchemy måste konfigureras för att använda utf-8-kodning. Lösningen i ovanstående kod skulle vara att ändra rad 3 till:
engine = create_engine('mysql://root:@localhost/testdb?charset=utf8', encoding = 'utf-8')