Ask yourself: what is your long term career goal? what is your family goal? which one takes priority when they are in conflict?
(in my view) things may not be as reliable as you first thought:
nice manager - he/she may leave next month, he/she may stay in the same position for a long time, people reporting to him/her would not see much growth either in the meantime.
large company - a lot of people can be made redundant without affecting business much.
more responsibilities in a small firm - 廟小妖精多,small firm can also be very disorganised. you may need a lot of people skills to survive.
Things that you did not mention:
What can you learn from these 2 positions in (say) 5 years time? how much can they contribute to your CV?
To be honest, I feel you perhaps are easy to be distracted and change your mind (you said:I thought I would stay for at least 3-5 years when I first decided to join last March; I just switched to my current company Last March , so it's only been 9+ months.). You need to make up your mind first on what you want in a long term, and see which option serves it better.