Nou, binnen een uur na het plaatsen van mijn vraag, had ik het al door. Misschien had ik wat meer onderzoek moeten doen voordat ik iets post.
Het probleem is dat sqlalchemy moet worden geconfigureerd om utf-8-codering te gebruiken. De oplossing in de bovenstaande code zou zijn om regel 3 te veranderen in:
engine = create_engine('mysql://root:@localhost/testdb?charset=utf8', encoding = 'utf-8')