Are you using Couenne through JuMP? If so, the recommended way to query solutions is to check that a primal solution indeed exists.
Normally, if a solver has found a feasible solution (even if it was not able to prove global optimality), it should let you query it. In your case, you want to check that primal_status(model) == FEASIBLE_POINT
.
If, for some reason, the solver log suggests that a feasible solution has been found, but the above check fails, there may be an issue in either Couenne itself or its wrapper.
Can you provide a reproducible example? (you can have a look here for guidelines on how to do that)