I think you misinterpreted that article. It discusses calculating an estimate for capacity planning. It is estimating a max number of relationships for calculation purposes. I tried this and it works. That is 26 properties....
with {a:1, b:2, c:3, d:4, e:5, f:6, g:7, h:8, i:9, j:10, k:11, l:12, m:13, n:14, o:15, p:16, q:17, r:18, s:19, t:20, u:21, v:22, w:23, x:24, y:25, z:26} as properties
create ()-[r:REL]->()
set r = properties
return r
{
"identity": 3045,
"start": 1472,
"end": 1473,
"type": "REL",
"properties": {
"a": 1,
"b": 2,
"c": 3,
"d": 4,
"e": 5,
"f": 6,
"g": 7,
"h": 8,
"i": 9,
"j": 10,
"k": 11,
"l": 12,
"m": 13,
"n": 14,
"o": 15,
"p": 16,
"q": 17,
"r": 18,
"s": 19,
"t": 20,
"u": 21,
"v": 22,
"w": 23,
"x": 24,
"y": 25,
"z": 26
},
"elementId": "3045",
"startNodeElementId": "1472",
"endNodeElementId": "1473"
}
Maybe it is your code or a limitation of the python driver. I can test it with the java driver.