Does an OP_RETURN script always need another output within the transaction?
If you want to retain any change, yes you will need two outputs to return unspent Bitcoin to yourself. If you are spending for example a 0.0001 BTC output, 0.0001 to fees, then a single 0 BTC OP_RETURN output would be valid.