I would like to start by giving you light on my background, which inherently is a part of everyone's opinions on anything. I'm LGBT, raised Catholic but have become atheist, and tend to vote towards the left, but never just fallow party lines. With this is mind you would think that I would be screaming that the outcome should have been overwhelmingly in favor of LGBT rights, but I take a different view that I honestly don't see propositioned by many.
First I don't believe this should be a question of freedom of religion, but instead freedom of expression. While the bakers motivation for not wanting to serve the couple was based off religious grounds, the heart of the argument was is he complecom to create something akin to art that conveyed a message he disagreed with, it was based in religion, but nonetheless was a question about government trying to compel his expression.
Solution, uphold the bakers right to deny customers the creation of a cake with a specific message that they disagree with, but not too deny the customer the creation of a cake that lacks any message they disagree with, regardless of what the use of cake, or any modifications thereof, once the product is finished and paid for.
In short, if you don't want to make a cake that says "yay gay marriage" you shouldn't have too, because I wouldn't want to be forced to make a cake that says "God hates fags," or even "I love Trump," which is more applicable because political affiliation is not a protected class. However I don't think a baker should be able to refuse all forms of their creative expression, simply because the person is gay, or in the KKK.
This way all sides still get service, while those who are creating don't have to tie their name to art they disagree with. If someone wants to buy a plain called from you then write their own hateful message on after purchasing that's fine and it's the responsibility of the owner to keep a record of their work before the buyer altered it, just like you need to keep a receipt of your purchases to prove you didn't steal.