Without coding the whole thing yourself, this sounds like what the Cred plugin was written to do. Using the Toolset suite is, of course, limiting compared to doing everything hands-on but the trade-offs in terms of deployment time are pretty massive.
If you want to get down with a lot of hand coding, there are tutorials on how to do what you are asking.
Yoast also talked a bit about updating custom post types using Gravity a while back (without code).
Whatever avenue you chose, it’s not going to be a 10 minute solution.