Nope, you're pretty much stuck.
You can't 'sell' it to someone else, because RCCL requires at least on of the original people in the booking to stay in the booking. So while you could change one person's name, you can't change both.
But you don't have to cancel and rebook, they can actually move the deposit you have already paid to the new cabin so you don't have to worry about getting a refund and then making another payment.
And what your original cabin is worth has no bearing whatsoever on the price of your new cabin.
Unfortunately, your agent has given you the correct information and there's not alot they can do. The only thing I might recommend is for your agent to contact their Business Development Manager with RCCL and see if perhaps they can pull some strings to make the change a bit more palatable.