I'm a big fan of the G3258, and I own one myself, but not all H81 boards can still overclock it. You need to research each board and the last BIOS version that supported overclocking. And most of the decent, stable, well reviewed motherboards are no longer sold. So finding a motherboard becomes a bit of a crap shoot. If you google "ASUS H81M-C G3258 overclock" you'll find lots of posts from people who are unable to get it to work.
The reason I suggested the Core i3-7350K is that it's already clocked at a respectable 4.2GHz so you really don't need to overclock if you don't want to.
So, you can pick up a decent $60 (mini ITX, yay!) motherboard like this one...
ASRock H110M-ITX LGA 1151 Intel H110 HDMI SATA 6Gb/s USB 3.0 Mini ITX Intel Motherboard
https://www.newegg.com/Product/Product.aspx?Item=N82E16813157678So, yeah, it's more expensive and not quite as fast as an overclocked G3258, but boards are easy to find, you don't need to overclock, and it has hyperthreading as a bonus.
Also, the Core i3-7350K has 4M of cache (vs 3M on the G3258) and supports AVX2 processor extensions, so in theory, you might be able to squeeze out a little more performance by compiling your own build with optimizations for AVX2 enabled.