Very simple fix for this, which isn't mentioned anywhere in documentation. When returning the response, you need statusCode, not status.
Using the following response instead resolved the issue:
let response = {
statusCode: 200,
headers: {
"Content-Type": "text/html",
},
body: content,
};