Thanks for the help @pierhugues, it works now with that workaround.
But should I file a bug regarding the "message" part being parsed different than other field names (can you point me to where this is happening) ?
I removed the 2 lines from the Logstash config: "codec => json" and "include_codec_tag => false".
I renamed "message" to "msg", and now the object is indexed and mapped correctly so I can use object fields: msg.name, msg.status etc.