Note: the Wikipedia article on the Belarusian Arabic alphabet is rather sketchy, the book the OP gives a link to is really a fundamental research of Kitabs (in Russian). The orthography in the Kitabs is no way standardized and changes both diachronically and synchronically.
If we look at the way the Belarusian Arabic alphabet (BAA) uses the letters of the Arabic alphabet (AA), we will see it is conceptually different from the way Persian (P) or Ottoman Turkish used AA.
Persian uses the AA letters as they are, that is, with the same phonetic readings, only simplifying some specific Arabic sounds to fit the Persian phonetics, e.g. AA ث [θ], ص [sˤ], س [s] are all read as P [s]. In the same way, AA ذ [ð], ز [z], ض [dˤ], ظ [ðˤ] are all read as P [z]. The letters with simplified reading are mostly used in Arabic borrowings, while the native Persian words are usually written in the letters with the original readings (س and ز for [s] and [z]), thus keeping the Arabic borrowings in their original Arabic orthography. At the same time, P introduces four letters for the sounds not found in Arabic: پ [p], چ [tʃ͡], ژ [ʒ], گ [g].
Belarusian uses the AA in a different way. Very much in the same vein as what the Chinese pinyin does with the Latin alphabet, BAA reassigns the values of the AA letters to fit the needs of the Belarusian language with its massive 38 consonants repertoire as compared to the 28 consonants of Arabic (about 25% less than in Belarusian). Naturally, not every Belarusian phoneme received its own letter in BAA, e.g. [m] and [mʲ] were written the same way, so were [l] and [lʲ], [p] and [pʲ], etc. But most consonants got a distinct letter, the reason for the choice sometimes being not too straightforward, for example the AA س [s] was used for [tsʲ] in BAA, while AA ص [sˤ] became BAA [s], and AA ث [θ] became BAA [sʲ].
Note that unlike P where all the AA s-like letters came to be read as pure [s] in P, in BAA all the AA s-like letters got rearranged among the Belarusian s-like sounds. That is the point: BAA used the AA letter repertoire sparingly.
Anyways, the 28 AA letters were not enough, so additional letters were introduced: for [dz] and [dzʲ] and for [ts], these were purely Belarusian original designs hardly found anywhere else. Also, three more letters were borrowed from Persian/Ottoman: پ [p], چ [tʃ͡], ژ [ʒ]. Note that all these five additional letters had 3 dots.
The Persian گ [g] was not included into the BAA. This P letter was not used in Ottoman Turkish, and the Belarusian Lipka Tatars who used BAA were rather oriented towards Turkey than towards Persia. The other reason was the sparing principle of BAA: why introducing a new letter when there are still some AA letters for glottal [h] (ه) and velar/uvular [ɣ ~ ʁ] (غ) not assigned any Belarusian sound values? The Belarusian velars [k] and [kʲ] were BAA ق and ك, [x]/[xʲ] were ح, sometimes خ. There remained [ɣ], [ɣʲ] and [g], [gʲ], the latter pair being peripheral phonemes in Belarusian but quite common in Polish for which BAA was also used. The most logical choice was to use the letter without a diacritic for the most common sound, so AA ه [h] became BAA [ɣ]/[ɣʲ] and AA غ became [g]/[gʲ]. Also note that some BAA manuscripts are written in a mixture of Belarusian and Polish, so ه and غ are used in them without any system.
Taking into account the BAA principles of reassigning the AA letter values and sparingness, we see the scale of the conceptual changes and innovations BAA introduced into the AA. Against that background the questions of why this or that value was assigned to this or that letter in most cases has just a hypothesis as an answer. What we can see clearly is that the Belarusian Arabic alphabet is a design of great originality not following the trends of its time and cultural sphere, it should not be measured by the rest of the AA-based scripts of that time.