To be honest and fair lets have a look at how much India has played Abroad vs Home since 2013 (only tests)(5 years)
Away Tours
India tour of New Zealand 2013 (2 test)
India tour of South Africa 2013 (2 test)
India tour of England 2014 (4 test)
India tour of Australia 2014 (4 test)
India tour of Bangladesh 2015 (1 test)
India tour of Sri Lanka 2015(3 test)
India tour of West Indies 2016(4 test)
India tour of Sri Lanka 2017(3 test)
India tour of South Africa (3 test) *
Total - 23
Home Tours
West Indies tour of India 2014 (3 test)
South Africa tour of India 2015(3 test)
New Zealand tour of India 2016(3 test)
England tour of India 2016(5 test)
Bangladesh tour of India 2016(1 test)
Australia tour of India 2016(4 test)
Sri Lanka tour of India 2017 (3 test)
Total - 22
So basically India has played 22 tests away in 4 years period and has played 22 tests at home. Now tell me how is that India plays at Home more? Or how has Kohli boosted his record more at home when he has equally played away and home. Remove the South Africa series that is yet to be played and its still only 3 test matches played less. Add to the fact that in 2013 season India only played away at New Zealand (2 test matches) & South Africa (2 test matches) so in short in last 5 years India has played 23 away test matches not including the upcoming South African tour to 22 test matches at home. So your point makes no sense
EDIT
Also others do not get straight run because they dont have schedules set as India. Everyone wants to earn their slice of money from India and India plays everyone unlike other countries. Every country makes more then any series money playing against India.