I mean hey, at least it works well enough to complete!
I think that is the right method; at least it's certainly better than what I did in the past! After a brief look around on tutorials, it seems that setting the player's parent to null when moving horizontally (on the player logic script) might fix this issue (with an added "OnCollisionStay" to reset the player's parent to the platform on the platform's script). Hope this helps, I know it helped me for future projects!