I think you know enough to work this out to a satisfactory conclusion on your own.
Consider a set of rules which I claim will satisfy your constraints: they will accept only unambiguous grammars, and they will accept all unambiguous grammars. That is, a grammar G is unambiguous if, and only if, it follows the rules.
Now, to be useful, my set of rules must be such that it's possible to tell by looking at a grammar whether it obeys the rules or not. That is, there must be an effective procedure for determining the truth, for any grammar G, of the proposition "G follows the rules."
You may be able now to see where this is headed. If you don't, give yourself a minute; it may come to you.
Assume I have such a set of rules. If my description is correct, we now have an effective procedure for determining whether a grammar follows the rules. And we know that iff the grammar follows the rules, then the grammar is unambiguous. My rules now sound a lot like a claim to have an effective procedure for determining whether a grammar is unambiguous. The decidability result you mention says that there is no such effective procedure.
So you can know, without examination, that my set of rules does not satisfy all three constraints. Either my rules do allow some ambiguous grammars (violating your first constraint), or my rules reject some unambiguous grammar (violating your second constraint), or there is no effective procedure for determining whether a grammar obeys my rules or not (violating our intuitive understanding of "a set of rules").
[Addendum]
If we relax the constraint on the set of rules to allow rules to count as useful even if they do not always terminate, then I think that the answer is probably 'yes', on the general principle that for any program one can formulate a theorem true if and only if the program terminates, and for any theorem, one can construct a program which will terminate iff the theorem is true. (This has a name, but I'm blanking on it at the moment.)
Goedel's Completeness Theorem established that there is an algorithm which will generate (given enough time) any theorem of a logical system; the hitch is that it's not guaranteed to terminate, so that after any given period of time we may be unable to tell whether we are dealing with a true statement which will be recognized eventually, or a false statement for which the algorithm may not terminate.
That said, I do not know that the rules in question would be anything other than a statement, in logical form, of the definition of ambiguity (or its absence) in a grammar. The simplest way to construct such a device would be to generate all possible grammars, in order of ascending length, and for each grammar undertake the proof, one step at a time, each grammar taking turns with the others. (If we work on one grammar until we have a result, we may never get to the next grammar, so we have to perform a sort of round-robin, much like the simple algorithm for generating all sentences from a grammar by generating all derivations.)
I hope this helps.