Max 75% accuracy! help!
It looks like you are training this as a multiclass classifier, to represent a binary choice. In which case, your Y value is wrong:

Y = [[0, 1],
    [1, 1],
    [1, 0],
    [0, 1]]


Here your second label is not self-consistent, and thus it is impossible to predict using a softmax output layer (where the sum of all outputs must equal 1). The best it can do is [0.5, 0.5] to match that label and you can see actually it got close to that in your test.

You want this instead:

Y = [[0, 1],
    [1, 0],
    [1, 0],
    [0, 1]]




A few asides . . .


Your example inputs all have the same third column (=1). This is redundant data, and you could drop it.
Your network is more complex than it needs to be for this task. A single hidden layer with only a few neurons in it should be sufficient.
For this specific task you could have chosen a single output neuron using a sigmoid activation (and need only one column in Y).