The rapid adoption of Internet of Things (IoT) devices in smart homes has led to growing security vulnerabilities, primarily due to the limitations of traditional, static access control mechanisms. This paper presents a novel, dynamic access control policy that leverages the immutable and transparent nature of Blockchain technology, specifically Ethereum, along with machine learning algorithms to enhance security measures. By integrating machine learning algorithms like Support Vector Machines (SVM) and Neural Networks, the proposed system can adapt and respond to changing behavioural patterns and potential threats in real time. Additionally, a caching mechanism implemented on the Ethereum Blockchain is introduced to optimize system performance and reduce latency. Experimental results demonstrate significant improvements in access control security, system efficiency, and adaptability. The findings of this paper not only contribute to the advancement of secure access control policies for IoT smart homes but pave the way for future research in integrating Blockchain and machine learning for robust and scalable IoT security solutions.