First of all, it is not an easy question and most of the sentences rephrased would sound awkward. I will show you the reason why.
"It should not have been boiled, but grilled" is better than "It should not have been boiled, but should have been grilled" because it is more concise. You don't have to repeat the same words/verbs twice. That is not good.
Note: I would recommend using a comma after boiled.
The second example is trickier as there is a phrasal adverb not only X, but (also) Y involved where not is not used to negate the sentence. It is confusing when it is put in the middle of any sentence. In that case, you should consider using subject-verb inversion.
By placing not only at the beginning of the sentence, you can make it less confusing.
Not only should it have been boiled, but (also) grilled.
You don't need to repeat should have been after but, either. You could see the above sentence looks/sounds much clearer than your example.
Note: There is an easier way to express it, i.e. "It should have been boiled and grilled at the same time" or "They should have boiled and grilled it at the same time". Which one to use depends on your style and preference. However, it is better to use inversion when you choose to use your example. You can visit the Wikipedia link I posted above to learn more about it.