object.properties will give you a class as well
You should be able to do:
Given your POGO object:
class User {
    String name
    String email
}
def object = new User(name:'tim', email:'tim@tim.com')
Write a method to inspect the class and pull the non-synthetic properties from it:
def extractProperties(obj) {
    obj.getClass()
       .declaredFields
       .findAll { !it.synthetic }
       .collectEntries { field ->
           [field.name, obj."$field.name"]
       }
}
Then, map spread that into your result map:
def result = [
    value: true, 
    *:extractProperties(object)
]
To give you:
['value':true, 'name':'tim', 'email':'tim@tim.com']