Как-нибудь так:
l = [(255, 0, 0), (0, 255, 0), (0, 0, 255), (0, 255, 255), (255, 255, 0)]
d = {(0, 0, 255): ((0, 0, 5), (0, 0, 5), (0, 0, 23), (0, 0, 23)), (255, 0, 0): ((0, 0, 10), (0, 0, 10), (0, 0, 21), (0, 0, 21)), (0, 255, 0): ((0, 0, 15), (0, 0, 15), (0, 0, 21), (0, 0, 21)), (255, 255, 0): ((0, 0, 20), (0, 0, 20), (0, 0, 21), (0, 0, 21)), (0, 255, 255): ((0, 0, 24), (0, 0, 24), (0, 0, 21), (0, 0, 21))}
d2 = sorted(d.items(), key=lambda x:l.index(x[0]))
print (d2)
Тут сортировка по индексу каждой тройки типа (255,0,0) в списке l.