Вам необходимо проверить свойство length при проверке, есть ли у него дочерние элементы. В противном случае все, что вы проверяете, это если результат не равен нулю или нет ... и он всегда будет отличен от нуля, даже если селектор не совпадает, потому что он вернет jQuery. Он будет пустым от любых элементов, но, тем не менее, является объектом и, следовательно, не равен нулю.
if (element.has('ul').children('a').length > 0) {
element.prepend("<span>+ </span>");