Sources so far:
Chinese Language Stack Exchange is a question and answer site for students, teachers, and linguists wanting to discuss the finer points of the Chinese language. It only takes a minute to sign up.Sign up to join this community
保 = maintain; guarantee; 持 = hold ; [保持 = to maintain; to keep ]
维 = maintain; safeguard; 持 = hold ; [维持 = to maintain; to keep ; to safeguard]
维 = maintain; safeguard; 护 = protect; [维护 = to protect]
When it means "maintain" or "keep" 保持 and 维持 are interchangeable
保持良好治安 = 维持良好治安 (maintain good level of public order)
保持平衡 = 维持平衡 (maintain balance)
I know you can say 维持治安, but not ie. 保持治安
It is because 治安 only means "level of public order" It can be good or bad. "保持治安" (maintain level of public order) doesn't specify what level of public order is being maintained; while "维持" has the meaning of "to safeguard" therefore "维持治安" (to safeguard level of public order) strongly implies the level of public order is being safeguarded is high -- We safeguard the level of public order only when it is high.
As my examples indicated, if the level of public order is specifically stated, e.g. "良好" (good) then you can use either 保持 or 维持
Also indicated in my example, 维护 means "to protect" "维护治安" doesn't need to specify what level of public order is being protected -- We protect the level of public order only when it is high.