The difference between ㅂ and ㅍ is the same difference between the Ps in spat (ㅂ) and pat (ㅍ). The latter has aspiration (more forceful with puffs of air). If you place your hand in front of your mouth and try saying spat and pat repeatedly you'll feel the difference.
A similar difference exists between stop (ㄷ) vs top (ㅌ) and skill (ㄱ) vs kill (ㅋ).
Also, fun fact, as the first letter of a word P/T/K in English sound like ㅍ/ㅌ/ㅋ but in Spanish they sound like ㅂ/ㄷ/ㄱ. You can even notice this difference in how each language calls each letter (피/티/케이 vs 베/데/가). As a native speaker of both this is one of the ways I identify Spanish accents in English and English accents in Spanish.
Both 또는 and 아니면 mean "or" but 아니면 literally means "if not" so it can be used for slightly different emphasis. I think 또는 is also used more frequently in writing.
In my experience 아니면 puts preference to the first object. So like if someone asked what you want to eat you could say 피자 아니면 고기 implying that you want pizza but if not (perhaps if that's not an option) meat is also acceptable. Using 또는 feels like equal preference is given to both options and is more of a neutral "or".