It’s a topic that has come up before. For certain in the long term, a more amenable format is definitely something we’re interested in implementing - but there’s a lot on the immediate development agenda so I don’t think we can promise anything at the moment.
To convert the TSV enriched event into JSON format, you can use one of our Analytics SDKs.
People have used Firehose in the past, but we haven’t built for compatibility. AFAIK firehose doesn’t add a separator between events, so your function might need to add a newline to the end or something along those lines.
You might also be interested in this guide to querying the data in Athena, which might help you achieve your goal without a custom function (using the Snowplow S3 loader instead of firehose).
Hope that helps.